Commit Graph

3223 Commits

Author SHA1 Message Date
Andrew Kelley
3bb00eac37 self-hosted: implement getAppDataDir for windows 2018-07-17 00:01:36 -04:00
Andrew Kelley
97bfeac13f self-hosted: create tmp dir for .o files and emit .o file for fn 2018-07-16 20:52:50 -04:00
Andrew Kelley
0fa24b6b75 allow implicit cast of undefined to optional 2018-07-16 19:26:15 -04:00
Andrew Kelley
9b56efc957 remove std.ArrayList.removeOrError function 2018-07-16 17:45:18 -04:00
Andrew Kelley
d3ce9d0643 codegen: remove unused variable 2018-07-16 11:59:37 -04:00
Andrew Kelley
e9a03cccf3 all integer sizes are available as primitives
* fix wrong implicit cast for `@IntType` bit_count parameter.
 * fix incorrect docs for `@IntType` bit_count parameter.

closes #1242
closes #745
closes #1240
2018-07-16 10:53:15 -04:00
Andrew Kelley
363f4facea self-hosted: generate LLVM IR for simple function 2018-07-15 00:07:33 -04:00
Andrew Kelley
28c3d4809b rename Module to Compilation
and CompilationUnit to ObjectFile
2018-07-14 16:31:17 -04:00
Bas van den Berg
69e50ad2f5 Improve realloc on fixed buffer allocator (#1238)
* Add test to check re-use of memory

* Check if realloc has to reallocate the last allocated memory block.
If so extend that block instead of allocating a new one.

* Also check if the realloc actually preserves the data.
2018-07-14 16:31:11 -04:00
Andrew Kelley
278829fc2c self-hosted: adding a fn to an llvm module 2018-07-14 16:03:22 -04:00
Andrew Kelley
91636f1e8c
Merge pull request #1237 from BarabasGitHub/fix-reallocating-from-0
Fix aligned reallocation
2018-07-14 12:09:54 -04:00
Bas van den Berg
c021a44567 Fix aligned reallocation from zero size. 2018-07-14 18:05:05 +02:00
Bas van den Berg
8be6c98ca6 Create unit test that tests aligned reallocation. 2018-07-14 18:04:23 +02:00
Andrew Kelley
29c756abba docs: correct some misinformation 2018-07-14 11:53:51 -04:00
Marc Tiehuis
bf441ed244 Add --stdin option to zig fmt 2018-07-14 11:43:35 -04:00
Andrew Kelley
ed3181f029 Merge branch 'eduardosm-extern-return-small-struct' 2018-07-14 11:33:13 -04:00
Andrew Kelley
f78d4ed30c add an assertion to the test 2018-07-14 11:33:01 -04:00
Eduardo Sánchez Muñoz
722b9b9e59 codegen: Store returned value if type is 'handle_is_ptr' and function is not 'first_arg_ret'.
Seems to fix #1230, includes test.
2018-07-14 11:33:01 -04:00
Andrew Kelley
2a719ee6c5 Merge branch 'tgschultz-arraylist-remove' 2018-07-14 10:02:13 -04:00
Andrew Kelley
b44332f5a6 std.ArrayList - rename remove to swapRemove 2018-07-14 10:01:45 -04:00
tgschultz
a0c1498e65 Added remove to ArrayList 2018-07-14 09:55:47 -04:00
Andrew Kelley
317ed57cb1 docs: clarify mem.Allocator.reallocFn 2018-07-14 09:55:10 -04:00
Andrew Kelley
5f1aa3505d
Merge pull request #1232 from BarabasGitHub/fix-array-list-insert
Fix array list insert
2018-07-14 09:35:50 -04:00
Andrew Kelley
e78b1b810f self-hosted: basic IR pass2 2018-07-13 21:56:38 -04:00
Bas van den Berg
fe98a2da70 Add a copyBackwards to fix the broken insert methods for ArrayList. 2018-07-13 23:01:21 +02:00
Bas van den Berg
a1cafa650d Improve ArrayList insert unit tests. 2018-07-13 22:35:34 +02:00
Andrew Kelley
c87102c304 ir_get_ref: delete unnecessary and probably buggy code 2018-07-13 14:53:54 -04:00
Andrew Kelley
171f33b961 ir: remove unnecessary and probably buggy code 2018-07-13 14:18:37 -04:00
Andrew Kelley
860d3da915 ir: remove dead code 2018-07-13 13:37:01 -04:00
Andrew Kelley
5354d1f5fc allow == for comparing optional pointers
closes #658
2018-07-13 12:34:42 -04:00
Andrew Kelley
ac096c2949 zig fmt 2018-07-12 19:24:32 -04:00
Andrew Kelley
69e60e351b self-hosted: better IR for empty fn
avoids a void
2018-07-12 15:22:23 -04:00
Andrew Kelley
687bd92f9c self-hosted: generate zig IR for simple function
no tests for this yet. I think the quickest path to testing will be
creating the .o files and linking with libc, executing, and then
comparing output.
2018-07-12 15:12:44 -04:00
Andrew Kelley
ce11d6d16c ir: refactor lvalues 2018-07-11 21:37:47 -04:00
Andrew Kelley
30c4add85a std.event.Future: workaround in tests for llvm coro memory
See #1194
2018-07-11 20:17:47 -04:00
Andrew Kelley
9751a0ae04 std.atomic: use spinlocks
the lock-free data structures all had ABA problems and
std.atomic.Stack had a possibility to load an unmapped memory address.
2018-07-11 19:38:01 -04:00
Andrew Kelley
9bdcd2a495 add std.event.Future
This is like a promise, but it's for multiple getters, and
uses an event loop.
2018-07-11 16:00:06 -04:00
Andrew Kelley
5954c94d20 build system: add -Dskip-release option to test faster 2018-07-11 14:09:05 -04:00
Andrew Kelley
3f30897fdc add compile error for disallowed types in extern structs
closes #1218
2018-07-11 14:08:56 -04:00
Andrew Kelley
3aaf814b9d
Merge pull request #1216 from ziglang/sort-improvements
Add generic comparator generator functions for sorting
2018-07-11 11:56:14 -04:00
Marc Tiehuis
9b054e73f6 Add generic comparator generator functions for sorting
- Copy-by-value instead of pointer where appropriate
 - Clean up old zig fmt issues
2018-07-11 18:44:30 +12:00
Andrew Kelley
c6c49389eb self-hosted: add compile error test for missing fn name 2018-07-11 01:26:46 -04:00
Andrew Kelley
c620a1fe3d
Merge pull request #1215 from ziglang/self-hosted-first-test
self-hosted: first passing test
2018-07-11 00:50:17 -04:00
Andrew Kelley
8197a14ceb self-hosted test: use C allocator since we depend on libc 2018-07-10 20:27:15 -04:00
Andrew Kelley
574e31f0a0 self-hosted: first passing test
* introduce std.atomic.Int
 * add src-self-hosted/test.zig which is tested by the main test suite
   - it fully utilizes the multithreaded async/await event loop so the
     tests should Go Fast
 * `stage2/bin/zig build-obj test.zig` is able to spit out an error if 2 exported
   functions collide
 * ability for `zig test` to accept `--object` and `--assembly`
   arguments
 * std.build: TestStep supports addLibPath and addObjectFile
2018-07-10 20:18:43 -04:00
Andrew Kelley
8fba0a6ae8 introduce std.event.Group for making parallel async calls 2018-07-10 15:17:01 -04:00
Andrew Kelley
0ce6934e26 allow var args calls to async functions 2018-07-10 11:44:47 -04:00
Andrew Kelley
696ef0bc03 langref: docs for union safety 2018-07-10 10:37:58 -04:00
Andrew Kelley
28f9230b40 fix crash when calling comptime-known undefined function ptr
closes #880
closes #1212
2018-07-10 10:12:08 -04:00
Andrew Kelley
b5cfbfd84e fix regression from b6eb4048 2018-07-09 23:41:28 -04:00