Andrew Kelley
d0b12d7726
Merge remote-tracking branch 'origin/master' into llvm10
2020-02-03 17:30:38 -05:00
Andrew Kelley
0fdcd5c4cb
Merge pull request #4337 from LemonBoy/stdlib-bsearch
...
stdlib: Add binary search function
2020-02-03 16:53:00 -05:00
LemonBoy
1658becb62
fmt: Fix one more edge case in container formatting
2020-02-03 16:03:48 -05:00
LemonBoy
db3aea3a0b
Change API for binarySearch fn
2020-02-03 21:51:03 +01:00
Andrew Kelley
5504f155aa
Merge pull request #4366 from jayschwa/blake3
...
crypto: Add BLAKE3 hashing algorithm
2020-02-03 15:13:50 -05:00
Michaël Larouche
9b11e5e1f1
Add InstallRawStep to Zig build system that does a similar job to llvm-objcopy. To use it, do 'exe.installRaw("kernel.bin");' where exe is a LibExeObjStep
...
Part of #2826
2020-02-03 15:07:34 -05:00
Jay Petacat
cb2c14e03f
blake3: Workaround issue #4373 with named types
2020-02-02 18:44:50 -05:00
LemonBoy
958f00f1c7
Don't generate any type info for void return types
...
Closely matches what the LLVM debug emitter expects, the generated DWARF
infos are now standard-compliant.
2020-02-02 15:30:12 -05:00
Andrew Kelley
a795c36d7b
Merge pull request #4352 from LemonBoy/fix-4349
...
fmt: Respect trailing commas in field declarations
2020-02-02 15:27:53 -05:00
frmdstryr
32291ab702
Add support for dependent packages when using build.zig
2020-02-02 15:21:27 -05:00
Jay Petacat
923e567c6d
blake3: Replace `&arr` with `arr[0..]` for slice args
2020-02-02 14:59:36 -05:00
Jay Petacat
b143fc0d32
blake3: Name and const pointer refinements
2020-02-02 14:42:57 -05:00
Jay Petacat
d098e212ad
blake3: Convert `*const [n]u8` types to `[n]u8`
...
I do not see many cases of constant pointers to arrays in the stdlib.
In fact, this makes the code run a little faster, probably because Zig
automatically converts to pointers where it makes sense.
2020-02-02 14:08:10 -05:00
Jay Petacat
4b86c1e3bb
crypto: Add BLAKE3 hashing algorithm
...
This is a translation of the [official reference implementation][1] with
few other changes. The bad news is that the reference implementation is
designed for simplicity and not speed, so there's a lot of room for
performance improvement. The good news is that, according to the crypto
benchmark, the implementation is still fast relative to the other
hashing algorithms:
```
md5: 430 MiB/s
sha1: 386 MiB/s
sha256: 191 MiB/s
sha512: 275 MiB/s
sha3-256: 233 MiB/s
sha3-512: 137 MiB/s
blake2s: 464 MiB/s
blake2b: 526 MiB/s
blake3: 576 MiB/s
poly1305: 1479 MiB/s
hmac-md5: 653 MiB/s
hmac-sha1: 553 MiB/s
hmac-sha256: 222 MiB/s
x25519: 8685 exchanges/s
```
[1]: https://github.com/BLAKE3-team/BLAKE3
2020-02-01 23:03:23 -05:00
daurnimator
4f2652d504
Winsock errors can be an enum
2020-02-01 14:29:16 -05:00
LemonBoy
0bf91cce58
windows: Minor changes to psapi prototypes
2020-02-01 13:43:46 -05:00
LemonBoy
e548195fd5
fmt: Use left brace position instead of the right one
...
Fix a typo and add a test case.
2020-02-01 15:28:23 +01:00
LemonBoy
f34abbf260
fmt: Handle declarations in line with the opening brace
2020-02-01 14:43:31 +01:00
LemonBoy
3640c682a2
Run `zig fmt`
2020-02-01 11:32:53 +01:00
LemonBoy
8309ee8752
fmt: Respect trailing comma for field declarations
...
Closes #4349
2020-02-01 11:28:21 +01:00
Andrew Kelley
e6a812c827
Merge pull request #4340 from daurnimator/ntstatus-as-enum
...
Windows error codes as non-exhaustive enums
2020-01-31 18:27:17 -05:00
LemonBoy
dee7804a81
fmt: Fix logic to find the argument list closing )
...
Closes #4341
2020-01-31 18:25:58 -05:00
Andrew Kelley
a62b4f268a
Merge pull request #4347 from LemonBoy/psapi
...
windows: Add psapi API
2020-01-31 18:25:25 -05:00
LemonBoy
c910aa8555
windows: Add GetCurrentProcess definition
2020-02-01 00:01:09 +01:00
LemonBoy
9ffc13b6c4
windows: Add psapi API
...
Export both the "old-style" definitions from psapi and the "new-style"
ones from kernel32.
2020-01-31 23:50:26 +01:00
daurnimator
ab46713fa6
std: update for linux 5.5 release
2020-01-31 10:18:17 -05:00
daurnimator
a351350b88
std: format non-exhaustive enums
2020-01-31 22:33:56 +11:00
daurnimator
b9f720365c
Turn win32 errors into a non-exhaustive enum
2020-01-31 22:33:55 +11:00
daurnimator
7cf0b02ab4
NTSTATUS is a non-exhaustive enum
2020-01-31 22:33:17 +11:00
LemonBoy
176bc53858
translate-c: Fix translation of fn pointers
...
Closes #4332
2020-01-30 21:33:50 -05:00
meme
1e78070a40
build: Fix missing `dupe`
...
- Strange memory corruption issues occur when allocated memory is passed to the builder and it is `defer`'d and freed
- Instead, `dupe` the string as is done in other handlers, this fixes the issue
2020-01-30 20:57:31 -05:00
Andrew Kelley
644a344715
self-hosted: add missing arch switch prong
2020-01-30 18:45:25 -05:00
Andrew Kelley
a475877007
fix translate-c regression
...
clang.zig had incorrect enum for builtin types
2020-01-30 18:43:54 -05:00
Andrew Kelley
c5df0b3e9d
set llvm cpu features to null for exynosm1,exynosm2
...
llvm dropped support for these features
2020-01-30 18:43:28 -05:00
LemonBoy
fd8d8afb24
stdlib: Add binary search function
2020-01-31 00:40:43 +01:00
LemonBoy
d27678fe83
fmt: Refactor the arg fetching code
...
* Error out if the requested index is out-of-bound
* Tidy-up all the arg-related variables in a struct
2020-01-30 18:07:02 -05:00
Andrew Kelley
17c8f108a4
drop @newStackCall
...
this was causing unrelated behavior tests to fail.
if this commit is reverted, the docs are good, but `@newStackCall` is
already deprecated in favor of `@call`, supplying the `stack` property.
2020-01-30 17:51:55 -05:00
Andrew Kelley
13f7824266
Merge pull request #4326 from LemonBoy/fix-4181
...
Generate compilable code for array inits
2020-01-30 16:12:23 -05:00
Andrew Kelley
4d2fed6232
zig fmt behavior tests
2020-01-30 16:10:08 -05:00
Andrew Kelley
58c97b3561
fix llvm assertion with debug info for vectors
2020-01-30 15:30:38 -05:00
Andrew Kelley
7b5f4a8d10
fix llvm assertion with debug info for vectors
2020-01-30 15:30:03 -05:00
LemonBoy
979c69d6b2
Amend some failing test cases
2020-01-30 19:53:35 +01:00
LemonBoy
c944865fc7
Generate compilable code for array inits
...
The compiler still doesn't like too much the newfangled anonymous arrays
so let's use the old-style declarations.
Closes #4181
2020-01-30 19:45:08 +01:00
Shawn Landden
cbd42e44d6
rb: fix rb.Node.getLast() that never worked
2020-01-30 12:05:57 -05:00
Andrew Kelley
70ee818d21
update target CPUs and features with llvm10's data
...
based on zig-llvm-target-details-generator
commit 3aef1b9b4415ed3acfaea4ce8bc233e213548f71
2020-01-30 11:31:41 -05:00
Andrew Kelley
14d9582e9a
ci: don't rely on sourcehut's pkg system
2020-01-30 10:23:00 -05:00
Andrew Kelley
65b1a4953f
Merge pull request #4324 from fengb/testing-allocator
...
Remove debug.global_allocator in favor of testing.allocator
2020-01-30 10:01:40 -05:00
Andrew Kelley
e3a383a661
Merge pull request #4239 from shawnl/rb
...
rb: **breaking** change API to be thread-safe
2020-01-30 09:45:35 -05:00
Andrew Kelley
0303e7bd8e
Merge pull request #4319 from Rocknest/windows-traces
...
Bring windows segfault handler on par with linux
2020-01-30 09:26:39 -05:00
LemonBoy
e77a102e24
Small DWARF fixups
...
* Clang doesn't seem to emit a DW_AT_low_pc together with DW_AT_ranges
for asm files.
* Keep reading the other CUs if the lookup fails.
2020-01-30 09:11:02 -05:00