Luuk de Gram
36df6a008f
Ensure function indices are correct and fix a memory leak
2021-02-05 18:06:25 +01:00
Luuk de Gram
aa3e0ff454
Create type declarations for extern functions and write the 'import' section
2021-02-05 18:06:20 +01:00
Michael Dusan
300ebbd560
target: map zig ppc32 → llvm ppc
...
- llvm does not accept `ppc32` as a CPU type
closes #7947
2021-02-04 14:22:38 -08:00
Rocknest
2d447b57cc
fix typo in comment
2021-02-02 20:07:08 -08:00
Frank Denis
7a01d396ee
siphash: update the link to the SipHash paper
2021-02-02 11:17:14 +02:00
Andrew Kelley
102d954220
Merge pull request #7827 from Snektron/spirv-setup
...
Stage 2: SPIR-V setup
2021-02-01 12:49:51 -08:00
Jonathan Marler
06b29c8546
std.json large number support
2021-02-01 12:40:49 -08:00
Martin Wickham
1032a69321
Dupe strings on all public api points for std.build
2021-02-01 12:31:24 -08:00
Luuk de Gram
c0685458a2
Define wasm constants
...
Update link.Wasm.zig to use std.wasm for its constants
Make opcodes u8 and non-exhaustive
Update test and rename 'spec' to 'wasm'
2021-02-01 12:28:25 -08:00
Cameron Conn
683d3f7242
Don't read more bytes than exist in MsfStream ( #7839 )
2021-02-01 15:27:39 -05:00
Vincent Rischmann
16905d96f7
Fixes for std.Thread.Condition ( #7883 )
...
* thread/condition: fix PthreadCondition compilation
* thread/condition: add wait, signal and broadcast
This is like std.Thread.Mutex which forwards calls to `impl`; avoids
having to call `cond.impl` every time.
* thread/condition: initialize the implementation
2021-02-01 15:16:39 -05:00
Andrew Kelley
66c0fe4f90
Merge pull request #7922 from daurnimator/comptime-json-fields
...
std.json support for comptime fields
2021-02-01 12:11:36 -08:00
Frank Denis
a03f9548d3
std/math/big/int: normalize after a right shift
...
After a right shift, top limbs may be all zero. However, without
normalization, the number of limbs is not going to change.
In order to check if a big number is zero, we used to assume that the
number of limbs is 1. Which may not be the case after right shifts,
even if the actual value is zero.
- Normalize after a right shift
- Add a test for that issue
- Check all the limbs in `eqlZero()`. It may not be necessary if
callers always remember to normalize before calling the function.
But checking all the limbs is very cheap and makes the function less
bug-prone.
2021-02-01 12:10:01 -08:00
daurnimator
e0a04e7f67
allow more complex comptime fields in std.json
2021-02-01 01:01:50 +11:00
daurnimator
f88bb56ee5
std.json union handling should bubble up AllocationRequired
2021-02-01 01:00:15 +11:00
daurnimator
33c0a01b08
std.json support for comptime fields
...
Closes #6231
2021-01-31 23:41:32 +11:00
Veikka Tuominen
fdc875ed00
Merge pull request #7750 from tadeokondrak/6609-tagtype-tag
...
Remove @TagType; std.meta.TagType -> std.meta.Tag
2021-01-31 12:37:12 +02:00
Tadeo Kondrak
0b5f3c2ef9
Replace @TagType uses, mostly with std.meta.Tag
2021-01-30 22:26:44 +02:00
rgreenblatt
78d2f2b819
FromWriteFileStep for all LibExeObjStep types
2021-01-30 17:50:41 +02:00
Tadeo Kondrak
b7767eb834
std.meta: rename TagPayloadType to TagPayload
2021-01-30 13:19:52 +02:00
Tadeo Kondrak
68ec54f386
std.meta: rename TagType to Tag
2021-01-30 13:19:52 +02:00
Dmitry Atamanov
290efc0747
Improve error messages in std.fmt ( #7898 )
2021-01-30 13:12:44 +02:00
Martin Wickham
3d4eeafb47
Fill out more cases for std.meta.sizeof
2021-01-30 11:13:20 +02:00
Asherah Connor
e8740a90b9
complete {Z} deprecation in std.fmt.formatIntValue
...
formatZigEscapes doesn't exist any more.
2021-01-29 20:46:39 +02:00
root
236db6232f
Fix interger overflow when calling joinZ with empty slices
2021-01-27 12:01:18 +02:00
Jakub Konka
79730e6f5c
macho: add arm64 relocation type enum
2021-01-26 08:11:31 +01:00
Joran Dirk Greef
881ecdc72f
Add MAX_RW_COUNT limit to std.os.pread()
...
Fixes: https://github.com/ziglang/zig/issues/7805
2021-01-25 10:41:38 -08:00
Timon Kruiper
e23bc1f76a
render: fix bug when rendering struct initializer with length 1
...
This crashed the compiler when running translate-c. See the added test.
2021-01-25 10:40:00 -08:00
Andrew Kelley
4ca1f4ec2e
Merge pull request #7846 from LemonBoy/filtertest
...
stage1: don't filter test blocks with empty label
2021-01-25 10:39:11 -08:00
Joran Dirk Greef
68a040aec7
linux: add fallocate() to io_uring
2021-01-25 10:34:20 -08:00
Timon Kruiper
9238d12537
windows: make sure to handle PATH_NOT_FOUND when deleting files
...
Fixes #7879
2021-01-25 10:33:08 -08:00
Andrew Kelley
2b321c25ce
std.Progress: call refreshWithHeldLock as appropriate
2021-01-24 12:22:17 -07:00
Timon Kruiper
4f7d76f19c
fix windows bug in Progress.zig
...
This bug caused the compiler to deadlock when multiple c objects
were build in parallel.
Thanks @kprotty for finding this bug!
2021-01-24 12:20:51 -07:00
LemonBoy
134f5fd3d6
std: Update test "" to test where it makes sense
2021-01-22 15:46:58 +01:00
LemonBoy
ac004e1bf1
stage1: Allow nameless test blocks
...
Nameless blocks are never filtered, the test prefix is still applied.
2021-01-22 15:46:58 +01:00
Jakub Konka
843d91e75d
Bring back stack trace printing on ARM Darwin
...
This temporary patch fixes a segfault caused by miscompilation
by the LLD when generating stubs for initialization of thread local
storage. We effectively bypass TLS in the default panic handler
so that no segfault is generated and the stack trace is correctly
reported back to the user.
Note that, this is linked directly to a bigger issue with LLD
ziglang/zig#7527 and when resolved, we only need to remove the
`comptime` code path introduced with this patch to use the default
panic handler that relies on TLS.
Co-authored-by: Andrew Kelley <andrew@ziglang.org>
2021-01-21 23:20:42 +01:00
Andrew Kelley
d5d0619aac
stage2: ELF: avoid multiplication for ideal capacity
...
ideal capacity is now determined by e.g.
x += x / f
rather than
x = x * b / a
This turns a multiplication into an addition, making it less likely to
overflow the integer. This commit also introduces padToIdeal() which
does saturating arithmetic so that no overflow is possible when
calculating ideal capacity.
closes #7830
2021-01-19 13:47:51 -07:00
Robin Voetter
02c138fe70
SPIR-V: Add glsl450 and vulkan spir-v operating system definitions
2021-01-19 15:28:17 +01:00
Robin Voetter
ab607d455e
SPIR-V: Initial architecture definitions and setup
2021-01-19 15:28:17 +01:00
Andrew Kelley
0353c9601a
Merge pull request #7814 from LemonBoy/fix-7760
...
std: Fixed pipe2 fallback
2021-01-18 11:49:42 -08:00
Julian Maingot
4c5f69a065
update error return doc
...
Docs were out of sync with code
2021-01-18 11:04:33 -08:00
LemonBoy
6418f9ae91
std: Add missing cast when calling fcntl w/ constant args
...
comptime_int arguments are a big no no.
2021-01-18 18:02:09 +01:00
LemonBoy
f33bac2b12
std: define pipe2 only for os that support it
2021-01-18 17:24:26 +01:00
LemonBoy
9d18df142c
std: Fixed pipe2 fallback
...
Use both F_SETFD and F_SETFL depending on what flag we're setting.
Closes #7760
2021-01-18 14:52:35 +01:00
Andrew Kelley
8436134499
std.ArrayHashMap: add "AssertDiscard" function variants
...
* Add `swapRemoveAssertDiscard`
* Add `orderedRemoveAssertDiscard`
* Deprecate `removeAssertDiscard`
2021-01-16 22:49:20 -07:00
Andrew Kelley
1f65828ec6
Merge pull request #7716 from koachan/sparc64-libs
...
stage1: SPARCv9 f128 enablement
2021-01-16 12:10:03 -08:00
Guillaume Ballet
f7d7cb6268
crypto: add legacy keccak hash functions
2021-01-15 12:36:38 -08:00
Koakuma
1d67ab8823
Fix _Qp_cmp definition
2021-01-15 19:07:39 +07:00
Koakuma
bbb58b10f6
Add compiler-rt stub for SPARC CPUs
2021-01-15 19:07:38 +07:00
Andrew Kelley
19f893c6bb
std.Thread: avoid compile errors for single-threaded OS's
2021-01-14 22:42:29 -07:00