23550 Commits

Author SHA1 Message Date
Motiejus Jakštys
7abc3738a2 zig build: change "-Drelease" to "-Doptimize"
I find myself quite often creating ReleaseSafe builds and putting them
to production for certain experiments:
- Debug info are for stack traces. An ongoing example where those would
  help is #14815.
- Safety checks would have saved a couple of mine and @kubkon's hours in
  #15098.

This is a breaking change for scripts that make Zig releases -- I will
submit another PR to zig-bootstrap and release-cutter after this is
merged.
2023-04-16 23:55:51 +03:00
Luuk de Gram
7fad555e5e
Merge pull request #15271 from Luukdegram/wasm-start
wasm: no longer use simplified `start.zig` logic
2023-04-16 22:16:53 +02:00
Andrew Kelley
b0186f3100
Merge pull request #15277 from ziglang/tests
add CI test coverage for more target combinations
2023-04-16 12:43:35 -07:00
Bogdan Romanyuk
397649fb09 Removing duplicate word in doc 2023-04-16 22:10:48 +03:00
Jakub Konka
bc804eb841
Merge pull request #15291 from ziglang/x86_64-more-memory
x86_64: fix memory loads some more
2023-04-16 15:02:08 +02:00
Andrew Kelley
9e6647582d disable x86_64-windows self-hosted backend behavior tests
because they are not passing on the CI yet.
2023-04-15 12:45:47 -07:00
Jakub Konka
ecc52d859f x86_64: fix loading/storing pointers from linker deferred memory locations 2023-04-15 20:59:51 +02:00
Andrew Kelley
e9d854743a disable more failing C backend tests 2023-04-15 10:33:08 -07:00
Andrew Kelley
a281d29881 disable not-yet-passing C backend tests 2023-04-15 10:33:08 -07:00
Andrew Kelley
29c8d93b82 disable not-yet-passing test suites
* wasm32-wasi compiler_rt tests
 * std lib tests with the C backend
2023-04-15 10:33:08 -07:00
Andrew Kelley
9b631b2b32 compiler_rt: use default visibility for non-exported symbols 2023-04-15 10:33:08 -07:00
Andrew Kelley
4a233d1871 CI: more C backend test coverage
The CI now runs C backend tests in addition to compiling them. It uses
-std=c99 -pedantic -Werror in order to catch non-conformant C code.

This necessitated disabling a test case that caused a C compile error,
in addition to disabling a handful of warnings that are already being
triggered by Zig's C backend output for the behavior tests.

The upshot is that I was able to, very cleanly, integrate the C backend
tests into the build system, so that it communicates via the test runner
protocol along with all the other behavior tests.
2023-04-15 10:33:08 -07:00
Andrew Kelley
3c93c1664a tests: avoid skipping native tests
Make the test targets use options that match the actual options of
CompileStep. This makes the code more straightforward, and ends up
making fewer tests incorrectly skipped. For example, now the CI runner
on Windows will no longer skip self-hosted x86_64 backend tests.
2023-04-15 10:33:08 -07:00
Andrew Kelley
adc9b77d5f std.Build: add some more init options to CompileStep 2023-04-15 10:33:08 -07:00
serg
23ac4dd87b fix: print targets 2023-04-15 19:44:56 +03:00
Loris Cro
bd3e248c7e autodoc: add initial support for linking decls mentioned in markdown
this works both on doc comments and guides
2023-04-15 18:26:53 +02:00
Loris Cro
aa765c1d70 autodoc: add support for defining guide sections
For example:

//!zig-autodoc-section: Advanced Topics
2023-04-15 18:26:53 +02:00
Jakub Konka
b82130709d x86_64: cleanup different memory load types
Split `MCValue.linker_load` into `.load_got`, `.load_direct`, and
`.lea_direct`.
2023-04-15 11:10:24 +02:00
Jakub Konka
179117c114 x86_64: split MCValue.tlv_reloc into .load_tlv and .lea_tlv
`.load_tlv` signifies we want to load the value of a TLV
`.lea_tlv` signifies we want to load effective address of a TLV
2023-04-15 00:57:23 +02:00
Luuk de Gram
61c08d3c7e fix zig cc linker flags for Wasm
Closes #15258
2023-04-14 15:18:18 -04:00
Andrew Kelley
e0890734f0 std.Build.CompileStep: fix installLibraryHeaders regression
reverts regression introduced in
d2ad3f5074877475c8f0ec0fbbb323a05fe8cf78.

The commit correctly removed dest_builder from InstallArtifactStep, but
the change to installLibraryHeaders was incorrect since it affected
different steps than that one.
2023-04-14 11:59:27 -07:00
xEgoist
0733c8c5ca windows: replace GetPhysicallyInstalledSystemMemory with ntdll.
`GetPhysicallyInstalledSystemMemory` uses SMBios to grab the physical
memory size which can lead to unecessary allocation and inacurate
representation of the total memory. Using `System_Basic_Information`
help to retrieve the physical memory which is not reserved for the
kernel/tables. This aligns better with the linux side as `/proc/meminfo`
does the same thing.
2023-04-14 13:43:03 -04:00
David CARLIER
7b908e173f std: add shm_create_largepage for FreeBSD, completing MFD* constants. 2023-04-14 13:41:22 -04:00
Luuk de Gram
3ad092e1e7
test-link: update type link test due start.zig 2023-04-14 15:25:45 +02:00
Luuk de Gram
d755f67b93
wasm: no longer use simplified start.zig
The Wasm backend now supports all features required to use
the full `start.zig` logic, rather than the simplified version.
With this commit we remove all references to the simplified logic
for Wasm specifically.
2023-04-14 15:25:42 +02:00
Frank Denis
b42562be74
std.crypto.aegis: support 256-bit tags (#15276) 2023-04-14 11:20:36 +02:00
David Carlier
56d800ff7e std add getrandom to solato solaris based systems 2023-04-14 08:11:13 +03:00
Frank Denis
9adee806e3
secp256k1: Endormorphism.splitScalar() can return an error (#15270)
Fixes #15267
2023-04-14 04:06:00 +00:00
David CARLIER
4a0508e56c std: add kinfo_vmentry for FreeBSD 2023-04-13 23:46:03 -04:00
Jakub Konka
5e19250a12
Merge pull request #15185 from ziglang/macho-tls
macho: add TLS support
2023-04-13 22:54:55 +02:00
Luuk de Gram
25e3851fe0
Merge pull request #15257 from Luukdegram/wasm-tagname
wasm: Implement `@tagName` instruction
2023-04-13 19:32:22 +02:00
Loris Cro
fbcf1c0006
Merge pull request #15261 from der-teufel-programming/autodoc-defaults
Autodoc: default values for fields in structs, explicit values for tags in enums
2023-04-13 17:53:13 +02:00
Krzysztof Wolicki
aea886e2f3 autodoc: main.js formatting 2023-04-13 17:42:29 +02:00
Krzysztof Wolicki
8bbf62c3b9 autodoc: Handling of explicit values for enum fields
Fixes to frontend handling of structs
2023-04-13 17:42:29 +02:00
Krzysztof Wolicki
97b3b36c65 autodoc: Handling of default values for struct fields 2023-04-13 17:42:29 +02:00
Loris Cro
83d1f6b15a autodoc: index in search usingnamespace decls 2023-04-13 17:38:52 +02:00
Loris Cro
5c9906c231 autodoc: make DeclStatus references long-lived 2023-04-13 17:38:24 +02:00
Jakub Konka
a34752c941 ci: let's not skip non native tests on macos! 2023-04-13 16:44:22 +02:00
Jakub Konka
3f35d6984f x86_64: make TLV a separate MCValue 2023-04-13 16:35:45 +02:00
Jakub Konka
31738de281
Merge pull request #15184 from jacobly0/x86_64
x86_64: fix various miscompilations
2023-04-13 13:53:01 +02:00
Jakub Konka
887da399eb x86_64: fix load() and store() to accommodate TLV 2023-04-13 11:47:51 +02:00
Jakub Konka
fd52d4537a x86_64: emit pointer to TLV for macho 2023-04-13 11:47:51 +02:00
Jakub Konka
1f6165f621 macho: reference TLV thunks via GOT table 2023-04-13 11:47:51 +02:00
Jakub Konka
094ff60252 macho: emit TLV pointers and variables 2023-04-13 11:47:51 +02:00
Jakub Konka
09b6bd86de macho: cleanup dirtying and writing GOT atoms 2023-04-13 11:47:51 +02:00
Jakub Konka
57f9304275 macho: improve reporting of missing symbols
Fix a typo in TLV bootstrap symbol: __tlv_bootstrap.
2023-04-13 11:47:51 +02:00
Jakub Konka
ef645ab175 macho: refactor common logic between synthetic tables 2023-04-13 11:47:51 +02:00
Jakub Konka
38ecaf3ab6 macho: add machinery for emitting TLV refs 2023-04-13 11:47:51 +02:00
Jakub Konka
eba280ce20 macho: refactor relocation type in incremental linker 2023-04-13 11:47:51 +02:00
Jakub Konka
1795b8eb4e macho: emit TLS sections 2023-04-13 11:47:51 +02:00