Commit Graph

20168 Commits

Author SHA1 Message Date
Andrew Kelley
a7763c06f9 delete IrInstructionMarkErrRetTracePtr
this IR instruction is no longer needed
2019-08-05 00:44:39 -04:00
Andrew Kelley
0d8c9fcb18 support async functions with inferred error sets 2019-08-05 00:41:49 -04:00
Andrew Kelley
f27e5d439c refactor logic for determining if there is a frame pointer 2019-08-04 20:44:52 -04:00
Andrew Kelley
b7c94be688 Merge remote-tracking branch 'origin/master' into rewrite-coroutines 2019-08-04 19:10:36 -04:00
Andrew Kelley
fbf21efd24 simpler, less memory intensive suspend/resume implementation 2019-08-04 18:58:14 -04:00
Andrew Kelley
042914de75 move state from ZigFn to CodeGen to save memory 2019-08-04 18:26:37 -04:00
Andrew Kelley
fa30ebfbe5 suspension points inside branching control flow 2019-08-04 18:24:10 -04:00
Nick Erdmann
b979fc1bcd initial work torwards std lib support for uefi 2019-08-04 21:53:49 +02:00
Andrew Kelley
30466bccef update CONTRIBUTING.md 2019-08-04 15:15:25 -04:00
Sahnvour
8c99a51993 Merge pull request #2797 from Sahnvour/hashing
hash algorithm improvements
2019-08-04 21:02:00 +02:00
Sahnvour
54255ee32e autohash: force inlining of integer hashing so that the optimizer can see the fast path based on key's size which is known at comptime
otherwise it will always outline the call to hasher.update, resulting in much worse performance
2019-08-04 12:34:37 +02:00
Sahnvour
3faf5d3857 wyhash: stateless is faster for both iterative hashing and small keys. 2019-08-04 12:34:37 +02:00
Sahnvour
4b5172d287 move autoHash into its own module since it can be used with any hash function implementing a streaming interface 2019-08-04 12:34:37 +02:00
Sahnvour
5bf63bfbf1 make use of hashing streaming interface in autoHash 2019-08-04 12:34:05 +02:00
Sahnvour
8805a7b509 adapt http/headers.zig to wyhash's new interface 2019-08-04 12:34:05 +02:00
Marc Tiehuis
4c93ccab5a Add throughput test program for hash functions 2019-08-04 12:34:05 +02:00
Marc Tiehuis
83dffc70af Add iterative wyhash api 2019-08-04 12:34:05 +02:00
Sahnvour
c9ce43f59f fix hashmap using strings as keys 2019-08-04 12:34:05 +02:00
Sahnvour
5bd407b278 use wyhash in std's hashmap, and improve autoHash to handle more types and behave more correctly 2019-08-04 12:34:05 +02:00
Sahnvour
6150da3df9 direct port of wyhash v2
also inspired by https://github.com/ManDeJan/zig-wyhash
2019-08-04 12:34:02 +02:00
Andrew Kelley
f01cb8cc16 Merge pull request #2998 from daurnimator/return-elf
std: return Elf object from constructors instead of filling in pointer
2019-08-04 00:21:38 -07:00
daurnimator
887eac0219 std: remove elf.auto_close_stream and elf.prealloc_file 2019-08-04 16:27:36 +10:00
Andrew Kelley
12924477a5 fix regression in calling extern functions 2019-08-03 20:33:16 -04:00
emekoi
59e2c87b4b move windows abi detection to get_native_target 2019-08-03 18:40:27 -05:00
Andrew Kelley
87710a1cc2 implement @asyncCall which supports async function pointers 2019-08-03 16:17:42 -04:00
Andrew Kelley
5ce1a965e0 LLD patch: workaround for buggy MACH-O code
This reapplies 182cd0e4c0
to the embedded LLD.
2019-08-03 12:56:35 -04:00
Andrew Kelley
ffab950e0c update embedded LLD to 9.0.0rc1 2019-08-03 12:56:35 -04:00
Andrew Kelley
63ebd9d12e Merge remote-tracking branch 'origin/master' into llvm9 2019-08-03 12:39:15 -04:00
Andrew Kelley
5687323cd2 Merge pull request #2994 from euantorano/fix/1626-os-getRandomBytesDevURandom
Check if /dev/urandom is a character device
2019-08-02 23:55:43 -07:00
Euan T
08251fbc54 Omit system namespace.
Co-Authored-By: Andrew Kelley <andrew@ziglang.org>
2019-08-03 07:51:36 +01:00
Euan T
8e157ccb23 Update returned error return when not a character device.
Co-Authored-By: Andrew Kelley <andrew@ziglang.org>
2019-08-03 07:50:30 +01:00
Andrew Kelley
c879209661 add compile error for calling async function pointer 2019-08-03 02:40:38 -04:00
Andrew Kelley
e444e737b7 add runtime safety for resuming an awaiting function 2019-08-03 02:11:52 -04:00
daurnimator
521aaf3501 std: return Elf object from constructors instead of filling in pointer 2019-08-03 15:56:25 +10:00
Andrew Kelley
24d78177ee add compile error for async call of function pointer 2019-08-03 01:06:14 -04:00
Christoffer Rasmussen
57830e43ee Fix public function lookup
Previously it did not work, as lookup did not pass a correct parent type
to doLookup. Expected *?*Node, got ?*Node.
2019-08-02 21:48:30 -07:00
emekoi
102d3f30c4 accept unix style paths on windows-gnu 2019-08-02 19:39:33 -05:00
emekoi
f15ec9a59b implemented runtime abi detetction for windows 2019-08-02 19:32:46 -05:00
Andrew Kelley
0920bb0872 implement async functions returning structs 2019-08-02 19:27:27 -04:00
Andrew Kelley
e68fee3984 docs: add atomicrmw operations list 2019-08-02 18:54:15 -04:00
Andrew Kelley
1823a5979a Merge pull request #2985 from fengb/fix-build-references
Fix build references
2019-08-02 15:49:16 -07:00
Andrew Kelley
5bd330e76c add heap allocated async function frame test 2019-08-02 16:32:24 -04:00
Andrew Kelley
b3b6a98451 Merge remote-tracking branch 'origin/master' into rewrite-coroutines 2019-08-02 16:31:43 -04:00
Andrew Kelley
f07f09a373 Merge branch 'master' into rewrite-coroutines 2019-08-02 16:13:36 -04:00
Andrew Kelley
b2d94f9af2 Merge branch 'assignment-result-loc'
With this merge, assignments participate in result location
semantics.
2019-08-02 16:10:45 -04:00
Andrew Kelley
d105769926 fix regressions regarding writing through const pointers 2019-08-02 16:09:40 -04:00
Andrew Kelley
9069ee957c fix discarding function call results 2019-08-02 15:17:02 -04:00
Andrew Kelley
90e64bc620 fix cmpxchg with discarded result 2019-08-02 14:47:26 -04:00
Andrew Kelley
a5cb0f77d1 assignment participates in result location
fix one regression with optionals but there are more
2019-08-02 13:54:58 -04:00
Euan Torano
24fbd1f1d5 Add S_* values for freebsd. 2019-08-02 16:05:03 +01:00