Commit Graph

229 Commits

Author SHA1 Message Date
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
gingerBill
458ec5922e odin query
Output .json file containing information about the program
2019-05-25 20:24:19 +01:00
gingerBill
394baa9ddd Merge branch 'master' of https://github.com/odin-lang/Odin 2019-03-15 15:41:15 +00:00
gingerBill
3d86fc2f2f Minor adjustments 2019-03-15 15:41:06 +00:00
Jeroen van Rijn
61b07335d8 Fix build error on !Windows. 2019-03-15 07:37:20 +01:00