Commit Graph

233 Commits

Author SHA1 Message Date
gingerBill 4f4c3bb03b Add -extra-linker-flags:<string> 2020-05-06 13:41:22 +01:00
gingerBill 99ebb5af3b Support --flag as redundancy for -flag 2020-05-04 18:23:23 +01:00
gingerBill 45274868c3 Fix -subsystem:windows for normal backend 2020-05-04 18:07:49 +01:00
gingerBill 3299d6a204 Add -ignore-vs-search 2020-05-02 18:50:38 +01:00
gingerBill 1a9e75267b Fix rc.exe call 2020-05-02 10:00:34 +01:00
gingerBill dd0fb744fe Add missing ; 2020-04-30 19:26:31 +01:00
gingerBill 70a66cd559 Add -subsystem to odin build -help 2020-04-30 17:57:21 +01:00
gingerBill f09b6a4c90 Simplify compiler's Map and create a StringMap specifically for strings 2020-04-13 13:02:30 +01:00
gingerBill 65a2125dba Add -build-mode=obj 2020-04-13 12:00:40 +01:00
gingerBill 29a3cb25d3 Add extra guards for window-only performance checking 2020-04-07 11:47:28 +01:00
gingerBill 7ff690500a Fix psapi.h to be windows only 2020-04-07 11:41:55 +01:00
gingerBill d0b913dad1 Add extra internal memory analysis 2020-04-06 12:17:54 +01:00
Kevin Watters 957e6f7f08 Add a missing space after /LIBPATH linker options. 2020-03-28 21:05:32 -04:00
gingerBill 8093062e3b Wrap all LLVM C includes 2020-03-19 15:36:13 +00:00
gingerBill ed4d21045b Add LLVM_BACKEND_SUPPORT macro to make the backend optional 2020-03-19 15:14:31 +00:00
gingerBill dae817e5ab Integrate linker code with the new LLVM API backend 2020-03-08 17:44:08 +00:00
gingerBill f92334a769 Basic functionality, except for map and correct nested typename mangling 2020-03-07 10:38:14 +00:00
gingerBill 6151fdb324 Merge branch 'master' into llvm-integration 2020-03-04 19:27:01 +00:00
gingerBill 3f63e12198 Add -subsystem:console and -subsystem:windows flags for windows 2020-03-02 18:54:56 +00:00
gingerBill e197af766d Merge branch 'master' into llvm-integration 2020-02-23 10:39:57 +00:00
gingerBill 7d9600b740 Ternary Expr; lbAddr extra; Phi node support 2020-02-06 23:33:41 +00:00
Oskar Nordquist 0b299cb8b4 Fix https://github.com/odin-lang/Odin/issues/555 2020-02-05 20:48:18 +01:00
gingerBill 5f1b397a05 Use lbValue to represent values everywhere 2020-02-01 23:52:22 +00:00
gingerBill 6ed6a91a64 Begin LLVM C API integration 2020-02-01 22:50:57 +00:00
gingerBill 7e6454b2f7 Add odin [command] -help (not requiring a file to be passed) 2020-01-31 23:34:00 +00:00
gingerBill c3205316ed Remove debug printing 2020-01-18 14:53:53 +00:00
gingerBill b542ef273d Begin work on -target:windows_386 2020-01-18 14:44:53 +00:00
gingerBill 404132de17 Fix microsoft_craziness.h to work correctly 2020-01-18 12:36:18 +00:00
oskarn 842281ddd3 Fix dylib foreign import 2020-01-01 11:36:42 +01:00
gingerBill 2252d992d7 Add -disable-assert to disable the code generation of the built-in run-time 'assert' procedure 2019-12-29 21:10:27 +00:00
gingerBill 85e31e1b69 Fix os.open 2019-12-23 18:10:09 +00:00
gingerBill 19c32ecb81 Add extra to -help output 2019-12-21 11:27:55 +00:00
gingerBill 494b1e7eaa Add -help which prints information about the compiler flags 2019-12-21 11:22:46 +00:00
gingerBill f170648629 Fix issue with -thread-count flag with <= 0 count 2019-12-03 18:23:14 +00:00
gingerBill 9db81498d8 Make the string type elements "immutable", akin to char const * in C
Allows for extra security and optimization benefits
2019-12-01 14:10:59 +00:00
gingerBill 0c0c83ee29 Disable find_visual_studio_and_windows_sdk_utf8 temporarily 2019-11-28 21:07:06 +00:00
gingerBill 37e3e081c6 Update microsoft_craziness.h to work correctly with the rest of the codebase (and not use WIN32_LEAN_AND_MEAN) 2019-11-27 15:18:32 +00:00
castano f8dd4816ff Integrate microsoft_craziness better. 2019-11-14 09:30:05 -08:00
castano 928a445a14 Fix definition. GB_SYSTEM_WINDOWS is not defined yet. Ideally microsoft_crazines.h should be included after common, but conflicts with defer macro. 2019-11-14 09:29:59 -08:00
castano 42cd78497a Use Jon's single file lib to find the latest compiler and SDK paths instead of relying on environment variables.
This allows you to run the odin compiler without having to use the visual studio command prompt or setting up environment variables. It would be nice to not rely on the automatic search exclusively, but allow specifying the desired compiler or SDK version.

This change introduces various library dependencies in order to interact with COM objects. Not sure if there's a way around that.
2019-11-14 09:29:45 -08:00
gingerBill 967981aacd Add -show-more-timings 2019-11-10 21:49:02 +00:00
Tetralux 10b109e25f Clarify that you can pass a directory to odin build
Changes the usage information to this:
```
D:\Software\odin\odin.exe is a tool for managing Odin source code
Usage:
        D:\Software\odin\odin.exe command [arguments]
Commands:
        build     compile .odin file, or directory of .odin files, as an executable.
                  one must contain the program's entry point, all must be in the same package.
        run       same as 'build', but also then runs the newly compiled executable.
        check     parse and type check .odin file
        query     parse, type check, and output a .json file containing information about the program
        docs      generate documentation for a .odin file
        version   print version
```
2019-10-19 17:55:05 +01:00
gingerBill 2a6d9e8927 #panic; Minor change to demo.odin; Fix #assert bug at file scope 2019-10-13 12:38:23 +01:00
gingerBill 218d1131e8 Change how foreign imports work for mac 2019-09-29 09:25:33 +01:00
gingerBill a9a2dafca5 Merge pull request #430 from nakst/master
New Essence OS layer; cross-compiling improvements
2019-09-09 14:39:35 +01:00
Mikkel Hjortshøj bc34083c9c Also return on unix 2019-09-08 01:10:54 +02:00
Mikkel Hjortshøj 08dd8414c1 Make odin run return the process exit code 2019-09-08 01:09:04 +02:00
nakst 22e982c8fb New Essence OS layer; cross-compiling improvements 2019-09-02 16:46:50 +01:00
gingerBill 5697d6df74 -go-to-definitions (OGTD file format) 2019-05-26 15:16:45 +01:00
gingerBill 426c1ed6f4 -compact flag for 'odin query' 2019-05-25 20:28:49 +01:00