Jared Miller
b55bc5eb26
Add wWinMain and wWinMainCRTStartup to fix #4376
2020-02-07 22:52:40 -05:00
Andrew Kelley
0e7461d4a3
Merge pull request #4408 from LemonBoy/mmap-i386-fix
...
handle SIGBUS, fix mmap on i386 linux
2020-02-07 22:51:43 -05:00
LemonBoy
a779450fef
linux/i386: Make syscall6 more robust and correct
...
LLVM10 exposed a subtle flaw in the previous implementation that made
the mmap tests fail.
2020-02-07 22:13:05 +01:00
pwzk
eff50abce6
Fixing library search path
2020-02-07 12:08:41 -05:00
LemonBoy
7a58ec81ec
std: Add a few tests for mmap/munmap
2020-02-07 16:07:12 +01:00
LemonBoy
be02616c86
debug: Show a nice error message on SIGBUS
2020-02-07 16:06:33 +01:00
Andrew Kelley
786700249e
build: fix handling disabling .h file generation
2020-02-06 13:46:59 -05:00
LemonBoy
cfcaf09cce
debug: Improve the frame-walking strategy
...
Clean up the code a bit and introduce a few checks meant to avoid
overshooting the end of the frame chain.
The code is now stable enough not to cause panics during the call frame
walking.
2020-02-06 11:25:40 -05:00
Andrew Kelley
5cf30b6791
Merge pull request #4369 from daurnimator/gimli
...
std.crypto.gimli enhancements
2020-02-05 18:13:28 -05:00
Andrew Kelley
e1f4f44dff
std: improve non-libc dynamic library loading
...
this is a cherry-pick of
5076f2d4f6918946616504d22907c9f80601caf8
from the llvm10 branch
2020-02-05 18:10:26 -05:00
Andrew Kelley
80ae434b66
Merge pull request #4397 from LemonBoy/fixes
...
Fixes
2020-02-05 17:04:40 -05:00
Andrew Kelley
378d733439
Merge pull request #4345 from Rocknest/open-di
...
Fix double close in openElfDebugInfo
2020-02-05 15:56:56 -05:00
LemonBoy
8c55c4550a
std: Rename isAbsoluteW to isAbsoluteWindowsW
2020-02-05 20:39:14 +01:00
LemonBoy
9d41ff335c
std: Make TCSA enum ABI-compliant
2020-02-05 20:37:00 +01:00
LemonBoy
21932a0ef2
Fix edge case in cast between fn with varargs
...
* Prevent the next_param_index to become greater than the param_count
one as it's expected by every other function.
* Fix a typo in a error message.
Closes #4381
2020-02-05 20:31:18 +01:00
Andrew Kelley
40b1fecace
Merge pull request #4363 from Vexu/trans-std-c
...
Use std.c.tokenizer in translate-c
2020-02-05 14:29:39 -05:00
Vexu
f196ddd251
translate c type names
2020-02-05 17:52:46 +02:00
Rocknest
f30feab1b9
Link the issue in doc comment
2020-02-05 17:19:00 +02:00
Rocknest
a56183197d
Fix double close in openElfDebugInfo
2020-02-05 17:18:30 +02:00
Michael Dusan
b022db16ec
Merge pull request #4394 from mikdusan/fix-cmake-regression
...
stage1: fix cmake regression
2020-02-05 10:01:16 -05:00
Michael Dusan
d0a9da74ef
stage1: fix cmake regression
...
- add `None` as a valid CMAKE_BUILD_TYPE
- this is a legitimate setting used by packagers
regression was caused by c6df5deb3450e0d8a2ba449c34a0bd195fbce8ec
2020-02-05 08:24:50 -05:00
daurnimator
ef4ecaa462
std: add AEAD modes for gimli
2020-02-06 00:21:26 +11:00
daurnimator
b495512175
add gimli to crypto hash benchmark
2020-02-06 00:16:00 +11:00
daurnimator
5a095a3f08
std: add Gimli based PRNG to std.rand
2020-02-06 00:16:00 +11:00
Vexu
1f49460dcb
fix regressions in comments and string prefixes
2020-02-05 08:35:30 +02:00
Michael Dusan
25cbee0b84
Merge pull request #4390 from mikdusan/cherry-pick
...
stage1: guard against case-mismatched build types
2020-02-04 22:34:46 -05:00
Michael Dusan
c6df5deb34
stage1: guard against case-mismatched build types
...
- zig CMakeLists.txt CMAKE_BUILD_TYPE string comparisons are case-sensitive
- cmake itself is unclear about how tolerant it is for case-mismatches
- add CMAKE_BUILD_TYPE guard in CMakeLists.txt to force exact matches
2020-02-04 20:39:05 -05:00
LemonBoy
3e7c02edc1
std: Fix edge case in isAbsolute fn family
...
* Empty strings are not considered absolute paths.
* Refactor some common code.
Closes #4382
2020-02-04 15:52:38 -05:00
nofmal
a697de3eac
Add basic linux termios implementation
2020-02-04 14:09:57 -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
Vexu
35c40f0a70
fix regressions
2020-02-02 10:49:51 +02: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
Vexu
3b23929be5
use std.c.tokenizer in translate-c
2020-02-02 01:40:46 +02: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