Vexu
e2e0b6272b
stage2: return same hash for different representations of same value
2020-10-30 15:58:13 +02:00
Vexu
3cc68bd913
stage2: switch liveness analysis
2020-10-30 15:58:13 +02:00
Vexu
769d5a9c43
stage2: switch comptime execution
2020-10-30 15:58:13 +02:00
Vexu
12e4c648cc
stage2: implement switch validation for integers
2020-10-30 15:58:13 +02:00
Vexu
4155d2ae24
stage2: switch ranges and multi item prongs
2020-10-30 15:58:13 +02:00
Vexu
3c96d79953
stage2: disallow switching on floats
2020-10-30 15:58:13 +02:00
Vexu
7db17a2d89
stage2: redesign switchbr
...
Switchbr now only handles single item prongs.
Ranges and multi item prongs are checked with
condbrs after the switchbr.
2020-10-30 15:58:12 +02:00
Vexu
95467f3249
stage2: dump generated zir with --verbose-ir
2020-10-30 15:58:12 +02:00
Vexu
570f610341
stage2: fix test harness tmp path handling
2020-10-30 15:58:12 +02:00
Vexu
2020ca640e
stage2: switch emit zir
2020-10-30 15:58:12 +02:00
Vexu
11998d2972
stage2: basic switch analysis
2020-10-30 15:58:12 +02:00
Vexu
2c12f4a993
stage2: implement Value.eql for void, null and types
2020-10-30 15:58:12 +02:00
Vexu
7e2774367e
stage2: implement Value.hash
2020-10-30 15:58:12 +02:00
Vexu
27d233cef7
stage2: basic switch validation
2020-10-30 15:58:11 +02:00
Vexu
ad32e46bce
stage2: switch astgen
2020-10-30 15:58:11 +02:00
Vexu
a1d7f0053d
stage2: support imports inside packages
2020-10-30 15:58:11 +02:00
Vexu
8421b8a898
stage2: detect import outside file path
2020-10-30 15:58:11 +02:00
zhaozg
72343ffd06
fix #3237 : resolve undefined symbol _DllMainCRTStartup
2020-10-29 20:09:22 -04:00
LemonBoy
490cafe2c5
stage1: Error out when trying to execute unreachable
...
Closes #6802
2020-10-29 20:06:52 -04:00
Andrew Kelley
f4bb8be9fc
Merge pull request #6654 from joachimschmidt557/stage2-arm
...
stage2 ARM: more stuff
2020-10-29 18:29:24 -04:00
Andrew Kelley
aaff66b8ed
Merge pull request #6866 from LemonBoy/fix-zlib
...
Fix zlib EOB condition
2020-10-29 18:23:36 -04:00
Andrew Kelley
a41c0b63bb
Merge pull request #6356 from jorangreef/io_uring
...
std: add io_uring library
2020-10-29 18:20:38 -04:00
Travis
f51ccf0d1f
panic when empty string passed as dest_rel_path to addInstallFileWithDir
...
causes the creation of a file instead of the directory that's meant to
be created
2020-10-29 15:22:39 -04:00
Frank Denis
26793453a7
std/crypto/blake2b: allow the initial output length to be set
...
BLAKE2 includes the expected output length in the initial state.
This length is actually distinct from the actual output length
used at finalization.
BLAKE2b-256/128 is thus not the same as BLAKE2b-128.
This behavior can be a little bit surprising, and has been "fixed"
in BLAKE3.
In order to support this, we may want to provide an option to set the
length used for domain separation.
In Zig, there is another reason to allow this: we assume that the
output length is defined at comptime.
But BLAKE2 doesn't have a fixed output length. For an output length that
is not known at comptime, we can't take the full block size and
truncate it due to the reason above.
What we can do now is set that length as an option to get the correct
initial state, and truncate the output if necessary.
2020-10-29 15:18:37 -04:00
wozeparrot
32e65c3f96
make addBuildOption append type ( #6801 )
...
* add addBuildOption test
2020-10-29 15:16:47 -04:00
Andrew Kelley
3a0e8c2b45
Merge pull request #6838 from LemonBoy/netstuff
...
std: Add basic smoke test for net functionality
2020-10-29 15:10:29 -04:00
Andrew Kelley
844eb932f4
Merge pull request #6841 from ifreund/fix-event-loop
...
std/event: fix poll error set handling
2020-10-29 14:41:18 -04:00
Frank Denis
e59dd7eecf
std/crypto/x25519: return encoded points directly + ed->mont map
...
Leverage result location semantics for X25519 like we do everywhere
else in 25519/*
Also add the edwards25519->curve25519 map by the way since many
applications seem to use this to share the same key pair for encryption
and signature.
2020-10-29 14:39:58 -04:00
Timon Kruiper
ad6e095ef6
stage2.Elf: fix off by one error in writeOffsetTableEntry
...
The code was using the length of the local symbols, which also
includes the null symbol. Fix this by using the offset table instead,
which only keeps track of the symbols that end up in the got.
2020-10-29 14:38:48 -04:00
LemonBoy
4fb896f16e
stage1: Fix bug in internal string slicing ( #6843 )
...
Closes #6456
2020-10-29 14:38:13 -04:00
=
6f3c84834d
Changed macosx to macos in support os to better relfect the output of zig targets
2020-10-29 14:35:29 -04:00
Frank Denis
5764c550ed
std/crypto: vectorize Salsa20
...
20% faster on x86_64, slower on aarch64 as usual :/
2020-10-29 14:34:58 -04:00
Jakub Konka
17575019a0
Set page size to 16KB for aarch64 macos
...
With this tweak, `test-std` pass on Apple Silicon + BigSur.
2020-10-29 14:21:43 -04:00
Frank Denis
bb3dfd2708
std/math: add support for vectors to rotl()/rotr()
2020-10-29 14:17:46 -04:00
LemonBoy
20fba0933f
std/deflate: Avoid reading past end of stream
...
Use a conservative (and slower) approach in the Huffman decoder fast
path.
Closes #6847
2020-10-29 17:16:03 +01:00
LemonBoy
b3314a8be6
stage1: Fix small bug in pointer type analysis
...
A flag meant to catch recursively-defined types was never reset, leading
the compiler to generate wrong answers when asked for its
type/alignment.
Closes #6850
2020-10-29 15:41:45 +02:00
Veikka Tuominen
85dd5746bd
Merge pull request #6678 from s-ol/doc-type-aware
...
generated docs improvements: add vector, fntype, anytype type-printing; bool, function value-printing
2020-10-29 15:19:02 +02:00
LemonBoy
fe6cc0c3ba
std: Better handling of type values in expectEqual
2020-10-29 15:13:44 +02:00
LemonBoy
88eb3ae8e5
std: Better handling of type values in expectEqual
2020-10-29 11:10:21 +01:00
Andrew Kelley
81f5e1e667
ci: freebsd: skip non-native tests to save time
2020-10-28 22:59:23 -07:00
Andrew Kelley
fd3da3348c
ci: macos: rebuild zig1.o with stage1
...
see #6830 for details.
2020-10-28 16:31:59 -07:00
s-ol
6e96352b90
docs: link to functions in getValueText and getCallHtml
2020-10-29 00:10:22 +01:00
LemonBoy
7bc9531698
stage1: Correctly generated optional constant values
...
Closes #6799
2020-10-28 21:56:28 +02:00
Frank Denis
0adc144f88
std/crypto: adjust aesni parallelism to CPU models
...
Intel keeps changing the latency & throughput of the aes* and clmul
instructions every time they release a new model.
Adjust `optimal_parallel_blocks` accordingly, keeping 8 as a safe
default for unknown data.
2020-10-28 21:44:00 +02:00
Frank Denis
ea45897fcc
PascalCase *box names, remove unneeded comptime & parenthesis
...
Also rename (salsa20|chacha20)Internal() to a better name.
And sort reexported crypto.* names
2020-10-28 21:43:15 +02:00
LemonBoy
6d2f103bfb
stage1: Fix crash in comptime struct value copy
...
Comptime fields are never materialized in the ZigValue so pay attention
when iterating over the fields array.
Fixes #6800
2020-10-28 21:13:32 +02:00
Jakub Konka
1a171a143a
Merge pull request #6842 from kubkon/aarch64-macos-fix
...
std: Apple Silicon: no fstat$INODE64 symbol found
2020-10-28 11:38:46 +01:00
Jakub Konka
4f50958407
Clean up exporting of symbols on Darwin
2020-10-28 10:36:19 +01:00
LemonBoy
7f46672193
More fixups for Windows targets
...
* Use closeSocket on sockets instead of plain old close, the latter
doesn't work on them.
* Use winsocket2 everywhere, mingw has no BSD sockets.
2020-10-28 10:03:23 +01:00
Jakub Konka
bda9a159aa
Apple Silicon: no fstat$INODE64 symbol found
...
It seems that Apple has finally got rid of the 32bit versions of
`fstat` and `fstatat`, and instead, only 64bit versions are available
on BigSur and Apple Silicon.
The tweak in this commit is required to make Zig stage1 compile on
BigSur + aarch64.
2020-10-27 22:47:53 +01:00