Commit Graph

3873 Commits (eb1c769404f95558c945a51068de884267079d3e)

Author SHA1 Message Date
Andrew Kelley c4f96ea745
disable stage2 tests on all targets
See #1364
2018-09-11 11:52:16 -04:00
Andrew Kelley 67735c6f15
ability to disable cache. off by default except for...
...zig run, zig build, compiler_rt.a, and builtin.a
2018-09-11 00:32:40 -04:00
Andrew Kelley a6bf37f8ca
Merge remote-tracking branch 'origin/master' into llvm7 2018-09-10 22:45:20 -04:00
Andrew Kelley 52f4e934a9
fix llvm assertion and missing compile error 2018-09-10 22:44:27 -04:00
Andrew Kelley 5ee5933ade
stage1 caching: zig no longer uses zig-cache 2018-09-10 17:30:45 -04:00
Andrew Kelley c7f7089392
drop patches on top of clang's C headers
We now match clang 7.0.0rc3 exactly.

See https://reviews.llvm.org/D51265 for more details.
2018-09-10 15:55:39 -04:00
Andrew Kelley e077d765fe
LLD patch: workaround for buggy MACH-O code
This reapplies 1a1414fc42
to the embedded LLD.
2018-09-10 15:54:51 -04:00
Andrew Kelley 54e470f936
update embedded LLD to 7.0.0rc3 2018-09-10 15:54:16 -04:00
Andrew Kelley 32be6e9b2a
caching is working
* add almost all the input parameter state to the hash
   - missing items are the detected MSVC installation on Windows
     and detected libc installation on POSIX
   - also missing are C files and .h files that libclang finds
 * artifacts are created in global cache directory instead of
   zig-cache.
   - exception: builtin.zig is still in zig-cache
 * zig run uses the new cache correctly
 * zig run uses execv on posix systems
2018-09-10 13:46:23 -04:00
Andrew Kelley c9474faa4e
Merge remote-tracking branch 'origin/master' into llvm7 2018-09-10 12:30:57 -04:00
Andrew Kelley fbe5737c84
stage1: always optimize blake and softfloat even in debug mode 2018-09-10 09:46:15 -04:00
Andrew Kelley c0bdcc7417
`zig id` command 2018-09-09 23:58:52 -04:00
Andrew Kelley 173fc842c4
basic compiler id hash working 2018-09-09 18:38:41 -04:00
Bas van den Berg 7c9f7b72c5 Add capacity and appendAssumeCapacity to ArrayList 2018-09-09 10:28:07 -04:00
Andrew Kelley 859b0aee1e
Merge pull request #1488 from Sahnvour/windows-resolve-path
Fixes a path corruption when compiling on windows.
2018-09-08 16:26:46 -04:00
Sahnvour d80a5c9a79 Fixes a path corruption when compiling on windows. 2018-09-08 18:43:18 +02:00
Shawn Landden 17cb69cebc fix elf auxv handling
Auxillery vectors are not guaranteed to be in any order, this
just happens to work on x86_64.
2018-09-08 14:47:21 +00:00
Shawn Landden 7d6d1d1f60 NaNs do not have signedness.
From IEEE-754 standard:

Conversion of a quiet NaN in a supported format to an external character sequence
shall produce a language-defined one of “nan” or a sequence that is equivalent except
for case (e.g., “NaN”), with an optional preceding sign. (This standard does not interpret
the sign of a NaN.)
2018-09-08 03:52:28 +00:00
Shawn Landden fdeb8765f0 use vfork in stage1 compiler to avoid OOM 2018-09-08 03:52:28 +00:00
Shawn Landden cba0d76fbc clone() on arm64 2018-09-08 03:52:28 +00:00
Shawn Landden f8808edff4 simplify f64_min to equivilent value
arm64 complains about the old value (I added a test)
2018-09-08 03:52:28 +00:00
Shawn Landden 342cff28f5 initial arm64 support 2018-09-08 03:52:28 +00:00
Shawn Landden 4a8c992ef1 os: use less syscalls
these don't exist on new platforms (such as arm64)

also switch from the deprecated dirent to dirent64
2018-09-08 03:52:28 +00:00
Shawn Landden d956d30167 this is not arch-specific 2018-09-08 03:52:28 +00:00
Andrew Kelley 2005898689
improve panic message from previous commit 2018-09-07 20:19:55 -04:00
Andrew Kelley 9c169f3cf7
C ABI: support returning large structs on x86_64
also panic instead of emitting bad code for returning small structs

See #1481
2018-09-07 20:09:33 -04:00
Andrew Kelley 9017efee22
C ABI: support medium size structs & unions for x86_64 params
See #1481
2018-09-07 18:51:34 -04:00
Andrew Kelley 85534a26c6
stage1: function to classify x86_64 abi types 2018-09-07 18:51:34 -04:00
Raul Leal f2186e5fa7
Update langref.html.in 2018-09-07 22:58:31 +01:00
raulgrell 09a1162af5 builtin functions: @byteOffsetOf and @bitOffsetOf 2018-09-07 22:49:19 +01:00
Andrew Kelley b18af37c57
fix crash when var init has compile error
and then the var is referenced

closes #1483
2018-09-07 15:17:24 -04:00
Andrew Kelley 7505529e44
Merge branch 'c-abi'
closes #1411
closes #1264
2018-09-07 13:56:54 -04:00
Andrew Kelley 743b2e4afc
add C ABI test for big unions 2018-09-07 13:51:11 -04:00
Andrew Kelley 421ca1523f
stage1: refactor variable inits to use c abi fn walk 2018-09-07 13:24:41 -04:00
Andrew Kelley c528c00900
stage1: refactor param vars for C ABI 2018-09-07 12:59:59 -04:00
Andrew Kelley 04d7b565f7
stage1: refactor fn type analysis to use C ABI walk fn 2018-09-07 12:23:50 -04:00
Andrew Kelley be6cccb3a5
stage1: c abi for big struct works 2018-09-07 11:52:57 -04:00
Andrew Kelley a9a925e500
add C ABI tests 2018-09-06 16:29:35 -04:00
Andrew Kelley a375bd0d9f
stage1: compile error instead of incorrect code
for unimplemented C ABI

See #1411
See #1481
2018-09-06 11:58:58 -04:00
Marc Tiehuis 29923efb95
Merge pull request #1480 from kristate/x25519-pubkey-fix
X25519: Fix createPublicKey signature and add test
2018-09-06 17:23:38 +12:00
Andrew Kelley b4d5d4d174
assume evenly divided base64 2018-09-05 23:39:14 -04:00
kristopher tate 15d30b967a std/crypto/x25519.zig: add test for `createPublicKey`; 2018-09-06 12:24:53 +09:00
Andrew Kelley 97c9f61db4
start creating a hash of input parameters
See #1416
2018-09-05 23:24:40 -04:00
kristopher tate d1855a0e93 std/crypto/x25519.zig: fix signature for `createPublicKey`; 2018-09-06 12:24:12 +09:00
Andrew Kelley 2d4b95900e
stage1: import blake2b implementation
from master branch of blake2 reference implementation
320c325437539ae91091ce62efec1913cd8093c2
2018-09-05 23:23:11 -04:00
Andrew Kelley 6632d85e5f
stage1: improve handling of generic fn proto type expr
closes #902
2018-09-05 21:21:59 -04:00
Andrew Kelley 1d8b8ad687
add compile error for using outer scoped runtime variables
from a fn defined inside it. closes #876
2018-09-05 20:32:06 -04:00
Andrew Kelley 8400163e02
stage1: rename more TypeTableEntry types to ZigType 2018-09-05 18:42:56 -04:00
Andrew Kelley 1f5c7ff4d7
stage1: rename VariableTableEntry to ZigVar 2018-09-05 18:35:57 -04:00
Andrew Kelley 3500d32db5
stage1: rename FnTableEntry to ZigFn 2018-09-05 18:34:33 -04:00