Jakub Konka
6a866f1a96
zld: preprocess relocs on arm64
2021-04-13 10:56:03 +02:00
Jakub Konka
4e676ecbb5
zld: allocate addresses for global symbols
2021-04-13 10:56:03 +02:00
Jakub Konka
d5c2f8ed32
zld: store a single global symtab
2021-04-13 10:56:03 +02:00
Jakub Konka
1b5bceec91
zld: start work on reloc preprocessing
2021-04-13 10:56:03 +02:00
Jakub Konka
04659f5b82
zld: allocate segments based on worst-case and upper-limit
2021-04-13 10:56:03 +02:00
Jakub Konka
116ea1bf2c
zld: assume remaining undefs are from libSystem
2021-04-13 10:56:03 +02:00
Jakub Konka
b0105029ca
zld: refactor object and archive parsing
2021-04-13 10:56:03 +02:00
Jakub Konka
988b184d03
zld: redo symbol resolution in objects
...
Store only globals and undefs at the linker level, while all locals
stay scoped to the actual object file they were defined in. This is
fine since the relocations referencing locals will always be resolved
first using the local symbol table before checking for the reference
within the linker's global symbol table.
This also paves the way for proper symbol resolution from within static
and dynamic libraries.
2021-04-13 10:56:03 +02:00
Andrew Kelley
262e09c482
stage1: resolve builtin types and values via std.builtin
...
rather than via `@import("builtin")`. This helps avoid the need for
`usingnamespace` used in builtin.zig or in std.builtin.
2021-04-12 15:54:28 -07:00
Michael Dusan
cc186dac65
test-stack-traces: enable elf/dwarf platforms
2021-04-12 17:18:56 -04:00
Michael Dusan
28ae498254
dwarf: fix LineNumberProgram check
...
- on first iteration populate `prev_` fields and do nothing else
closes #8421
2021-04-12 17:18:56 -04:00
Andrew Kelley
c4c7cb252a
Merge pull request #8502 from xackus/std-docs
...
std docs: @This() in generic types
2021-04-12 11:37:00 -07:00
Jakub Konka
d6d27d51ef
CI: update brew before installing pkgs
2021-04-12 18:42:51 +02:00
Michael Dusan
0fa1a2cb73
Revert "dwarf: fix LineNumberProgram check"
...
- needed/needs to go through review process
This reverts commit 746f65f8b3ce11d67d8fd392aea8bc05a24adae6.
2021-04-12 06:55:12 -04:00
Michael Dusan
746f65f8b3
dwarf: fix LineNumberProgram check
...
- tolerate out-of-order DW_AT_ranges
closes #8421
2021-04-12 06:12:00 -04:00
xackus
ab991cab84
std docs: @This() in generic types
2021-04-12 09:31:45 +02:00
Andrew Kelley
d2d4df4074
Merge pull request #8477 from joachimschmidt557/stage2-arm
...
stage2 codegen: Set MCValue of register arguments to their stack copies
2021-04-11 19:00:25 -07:00
Andrew Kelley
c5e662d860
Merge pull request #8497 from LemonBoy/some-ppc-fixes
...
Improve Improve PowerPC support
2021-04-11 18:59:31 -07:00
Michael Dusan
93cf9560b1
Merge remote-tracking branch 'origin/master' into llvm12
2021-04-11 17:40:19 -04:00
xackus
7857ad78db
std docs: update var to anytype
2021-04-11 22:59:30 +02:00
LemonBoy
44f8ce690d
std: Fix typo in sqrt implementation
...
The code initializes twice `t` instead of `t1`, leaving the latter
uninitialized. The problem manifested itself by corrupting the LSBs of
the result in unpredictable ways.
2021-04-11 21:27:39 +02:00
LemonBoy
8d94dc625b
compiler-rt: Introduce PowerPC-specific f128 helpers
...
For historical reasons IEEE f128 ops use `kf` instead of `tf` in their
names, there's no functional change.
2021-04-11 21:26:22 +02:00
LemonBoy
9bebdc77d6
std: Fix TLS definitions for 32bit PowerPC targets
...
Correct some silly errors and add the missing piece to set the thread
pointer (r2).
2021-04-11 21:26:22 +02:00
Andrew Kelley
82a31aac9b
Merge pull request #8483 from fengb/powerpc
...
Improve PowerPC support
2021-04-11 10:12:02 -07:00
LemonBoy
d97981f6fd
std: Make a test-case independent of the target endianness
2021-04-11 18:38:04 +02:00
Michael Dusan
cab1d5c1a3
azure: OnMasterSuccess dependsOn BuildMacOS_arm64
2021-04-11 05:17:18 -04:00
joachimschmidt557
4fe575f47b
stage2 ARM: Add fibonacci test
2021-04-11 10:19:36 +02:00
joachimschmidt557
a6ddc12b33
stage2 codegen: Set MCValue of register arguments to their stack copy
2021-04-11 10:19:35 +02:00
Michael Dusan
c676c21824
ci: remove superfluous linefeed from macos arm64
2021-04-11 01:33:17 -04:00
Benjamin Feng
073d8e55c3
Initialize the ppc stack frame correctly
2021-04-10 22:47:22 -05:00
Benjamin Feng
2e85eb2bf8
Rename time32 syscalls to match rest of stdlib
2021-04-10 22:47:22 -05:00
Benjamin Feng
ae3a0ff2d1
_start assembly for ppc
2021-04-10 22:47:22 -05:00
Benjamin Feng
b409accc96
Copy over ppc clone from musl
2021-04-10 22:47:22 -05:00
Benjamin Feng
df910b33f4
Add ppc Linux bits
2021-04-10 22:47:22 -05:00
Michael Dusan
d99dc21b9f
test: overhaul stack_trace testing
...
- limit expected-output to main source file;
ie. tolerate changes to start.zig
- when mode != .Debug the function name is now symbolically represented;
ie. tolerate changes in llvm optimizer effects on the callstack
- cleanup how test cases are specified
- add test case predicates for excluding by arch, os or custom fn
2021-04-10 23:20:06 -04:00
Michael Dusan
75f86dab3f
macos: add aarch64 (arm64) to downloads page
2021-04-10 19:33:17 -07:00
Isaac Freund
5b9ea5dd1e
zig fmt: fix line comment detection
...
Previously hasComment() would consider a string literal "//" to be a
line comment. Fix this by only searching the bytes between tokens.
2021-04-10 23:10:24 +02:00
Carlos Zúñiga
ecd38c70cc
Fix langref.html anchor navigation
2021-04-10 12:51:39 -07:00
Meghan Denny
ab43f2376e
lib/std: remove empty init from HashMapUnmanaged
2021-04-10 12:49:02 -07:00
Lewis Gaul
ecf555c693
zig fmt: render array init on one line if no trailing comma
...
Continue to insert a trailing comma if there is a comment or multiline
string literal present.
2021-04-10 16:39:26 +02:00
Andrew Kelley
86b31394c9
Merge pull request #8482 from mshockwave/dev-llvm-newpm
...
Switch to new LLVM PassManager
2021-04-09 17:21:06 -07:00
Min-Yih Hsu
52d871844c
llvm new-pm: Build O0 pipeline in the correct way
...
Use `PassBuilder::buildO0DefaultPipeline` to build pipeline for -O0
in replacement of `PassBuilder::buildPerModuleDefaultPipeline`. This
affects both normal and LTO settings.
Two redundant Passes - which were added by accident - were also removed
from LTO pipeline.
2021-04-09 16:51:35 -07:00
Min-Yih Hsu
6b3eaa62e8
Revert "Revert back to the old LLVM PassManager"
...
This reverts commit 09008125e7944ae01bb907f2eb8dbff41d7a0715.
2021-04-09 16:51:35 -07:00
jacob gw
0d92bd474f
stage2: fix case where public variables did not work
2021-04-09 11:54:38 -07:00
Andrew Kelley
b3f5d4dc4c
stage2: fix regression from previous commit
...
I forgot to build, sorry about that.
2021-04-09 10:38:44 -07:00
Andrew Kelley
7c4c5495be
stage2: fix stderr deadlock and slightly wrong tty coloring
2021-04-09 10:34:10 -07:00
Andrew Kelley
f75cdd1acd
Merge pull request #8470 from ziglang/stage2-start
...
stage2: blaze the trail for std lib integration
2021-04-09 10:15:46 -07:00
Andrew Kelley
952032b40c
Merge pull request #8439 from Luukdegram/wasm-mem
...
stage2: wasm - "Hello world"
2021-04-09 10:08:21 -07:00
jacob gw
afe5862111
stage2: add error for private decls accessed from other files
2021-04-09 10:05:15 -07:00
LemonBoy
bfc8500390
testing: Avoid @import-ing builtins module
...
Use std.builtins instead.
2021-04-09 10:04:16 -07:00