Nick Erdmann
88fdb303ff
std/os/uefi: replace init() with default values
2019-08-06 18:06:18 +02:00
Benjamin Feng
23ee619fc5
Output token symbols similar to stage1
2019-08-05 21:37:16 -05:00
Benjamin Feng
b4172e5151
Humanize tokenized symbol names
2019-08-05 21:03:46 -05:00
Andrew Kelley
7f23dac6dc
update readme
2019-08-05 13:49:17 -04:00
Euan Torano
7b8c96612f
Fix #2993 - use getrandom on freebsd
2019-08-05 09:31:38 -07:00
Nick Erdmann
20ce0b9952
std/os/uefi: replace integer bit fields with packed structs
2019-08-05 18:26:13 +02:00
Euan T
8aa87ec441
Add misisng newline
2019-08-05 09:23:15 -07:00
Euan Torano
0157365872
Add missing S_IS* for NetBSD
2019-08-05 09:23:15 -07:00
Andrew Kelley
20f63e588e
async functions have error return traces where appropriate
...
however the traces are not merged on `await` or async function calls
yet.
When an async function has an error set or error union as its return
type, it has a `StackTrace` before the args in the frame, so that it is
accessible from `anyframe->T` awaiters. However when it does not have an
errorable return type, but it does call or await an errorable, it has a
stack trace just before the locals. This way when doing an `@asyncCall`
on an async function pointer, it can populate the args (which are after
the `StackTrace`) because it knows the offset of the args based only on
the return type.
This sort of matches normal functions, where a stack trace pointer could
be supplied by a parameter, or it could be supplied by the stack of the
function, depending on whether the function itself is errorable.
2019-08-05 03:10:14 -04:00
Andrew Kelley
dfe8c5a2e9
add a src() method to AstNode to aid debugging
2019-08-05 03:09:17 -04:00
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 182cd0e4c0bef4c919d479135428da0251e8cc50
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