Andrew Kelley
944b0ef518
link.File.Coff: fix relationship between createEmpty/open
...
similar commit to b0c433c80f2e4edd7b60e444b4ea56dacb727051
2024-01-01 17:51:21 -07:00
Andrew Kelley
98dd4f7847
frontend: skip astgen for builtin.zig
...
since it's already done ahead of time and always unchanging
2024-01-01 17:51:21 -07:00
Andrew Kelley
4f8a44cd0f
compiler: fix UAF when writing builtin.zig
2024-01-01 17:51:21 -07:00
Andrew Kelley
44e2dbe117
fix logic for default entry point
...
when linking libc, the entry point is within libc.
when producing C code, the entry point is decided when compiling the C
code and does not need to be known up front.
fixes a false positive "error: unknown target entry point" when using
-ofmt=c.
2024-01-01 17:51:21 -07:00
Andrew Kelley
1edcea9ec8
link.Wasm: fix relationship between createEmpty/open
2024-01-01 17:51:21 -07:00
Andrew Kelley
981166e33f
link.Elf: truncate=true in createEmpty
2024-01-01 17:51:21 -07:00
Andrew Kelley
4d28db7329
Zcu: mark outdated decl handling as unreachable from only_c builds
...
This way we don't drag in linker code into only_c builds that doesn't
need to be there.
2024-01-01 17:51:21 -07:00
Andrew Kelley
edccd68adf
Package.Module: fix typo in default red-zone setting
...
oops, this was supposed to return true, not false.
2024-01-01 17:51:21 -07:00
Andrew Kelley
41ab64c3eb
Compilation.Config.resolve: explicit error set
...
Some logic has comptime-known conditions, causing the inferred error set
to be different on different compiler build configurations.
2024-01-01 17:51:21 -07:00
Andrew Kelley
8cf2cfc52c
update bootstrap scripts to new zig CLI
...
Now they use the new --mod --dep parameters.
2024-01-01 17:51:21 -07:00
Andrew Kelley
24eec48f60
CLI: update main usage text
...
* Organize and reword some stuff
* Add missing usage for `zig reduce`
2024-01-01 17:51:21 -07:00
Andrew Kelley
9141e1a29c
CLI: fix logic for sending output file path
...
via the compiler protocol
2024-01-01 17:51:21 -07:00
Andrew Kelley
e12e296306
CLI: fix not respecting module remappings
2024-01-01 17:51:21 -07:00
Andrew Kelley
3262e9ccee
zig build: fix logic for extracting executable file from Compilation
2024-01-01 17:51:21 -07:00
Andrew Kelley
3b36c4d0b3
zig build: pass resolved_target to Module.create
...
it's now required to pass this for the root module
2024-01-01 17:51:21 -07:00
Andrew Kelley
056f04c1ff
CLI: rename clang_argv to cc_argv
...
The args apply to Aro as well.
2024-01-01 17:51:21 -07:00
Andrew Kelley
fad35835aa
CLI: better error messages for bad args
2024-01-01 17:51:20 -07:00
Andrew Kelley
76c4781578
std.Build.Step.Options: update unit test to new API
2024-01-01 17:51:20 -07:00
Andrew Kelley
529d01c2ba
resolve error tracing logic at module creation time
...
rather than checking multiple conditions in Sema
2024-01-01 17:51:20 -07:00
Andrew Kelley
8944dea23f
CLI: fix regressed logic for any_dyn_libs
...
This value needs access to the fully resolved set of system libraries,
which required restructuring a bunch of CLI logic.
2024-01-01 17:51:20 -07:00
Andrew Kelley
db2ca2ca00
CLI: mark any_dyn_libs=true when encountering a shared object
2024-01-01 17:51:20 -07:00
Andrew Kelley
ca77c3bacc
std.Build.Step.Compile: restore previous step name
...
Print using the target query rather than the resolved target. This makes
it print "native" when compiling for the native target.
2024-01-01 17:51:20 -07:00
Andrew Kelley
4b667e7362
fix compilations without zig compilation units
2024-01-01 17:51:20 -07:00
Andrew Kelley
fe87bae7e3
frontend: fix handling of special builtin module
...
it's allocated differently and imported differently
2024-01-01 17:51:20 -07:00
Andrew Kelley
90cc408c14
fix --show-builtin when no positional argument is provided
2024-01-01 17:51:20 -07:00
Andrew Kelley
38f2172b0a
fix memory leak in addModuleTableToCacheHash
2024-01-01 17:51:20 -07:00
Andrew Kelley
a3ff4d9b45
fix entry symbol name on mips
2024-01-01 17:51:20 -07:00
Andrew Kelley
2d2a18831e
linker: rename intermediary_basname to zcu_object_sub_path
2024-01-01 17:51:20 -07:00
Andrew Kelley
9b98d33d0b
Compilation: don't store arena until it's done being used
2024-01-01 17:51:20 -07:00
Andrew Kelley
f256431838
fix compilation errors when enabling llvm
2024-01-01 17:51:20 -07:00
Andrew Kelley
57afdfc8fa
compilation: fix build artifact communication from sub-compilation
...
in whole cache mode, build artifacts are communicated by accessing the
whole cache information, for which there is a helper method called
toCrtFile
2024-01-01 17:51:20 -07:00
Andrew Kelley
b1fc3fe1c4
Elf: fix invalid free of path field
...
It's now arena-allocated so no need to free it with gpa
2024-01-01 17:51:20 -07:00
Andrew Kelley
e3409c0bce
Elf: fix createEmpty not creating the file
2024-01-01 17:51:20 -07:00
Andrew Kelley
0be97b5ae3
fix population of builtin.zig not making the parent dir
2024-01-01 17:51:20 -07:00
Andrew Kelley
d71e6273b6
std.fs.Dir.atomicFile: provide an option for make path
...
It's useful for the API to support creating the parent directory.
2024-01-01 17:51:20 -07:00
Andrew Kelley
9715936472
Compilation: oops! used comp before init
2024-01-01 17:51:20 -07:00
Andrew Kelley
b6dd5ad357
MachO: rip out the caching mechanism
...
This is redundant with CacheMode.whole which caches everything,
including linking output. Linker code does not need to concern itself
with caching like this.
2024-01-01 17:51:20 -07:00
Andrew Kelley
2047a6b82d
fix remaining compile errors except one
2024-01-01 17:51:20 -07:00
Andrew Kelley
4629708787
linker: fix some allocator references
2024-01-01 17:51:20 -07:00
Andrew Kelley
48d5861f92
fix more compilation errors introduced by this branch
2024-01-01 17:51:20 -07:00
Andrew Kelley
638db680f4
move dll_export_fns and rdynamic to Compilation.Config
2024-01-01 17:51:20 -07:00
Andrew Kelley
b54ad93175
update codegen.llvm references to bin_file.options
2024-01-01 17:51:19 -07:00
Andrew Kelley
92b54e50c8
glibc: update to new Compilation API
2024-01-01 17:51:19 -07:00
Andrew Kelley
ea0ba4f2b5
tsan: update to new Compilation API
2024-01-01 17:51:19 -07:00
Andrew Kelley
a1236b32f9
libcxx: update to new Compilation API
2024-01-01 17:51:19 -07:00
Andrew Kelley
2596f5d925
update bin_file.options references in Sema
...
mainly pertaining to error return tracing
2024-01-01 17:51:19 -07:00
Andrew Kelley
7e7d5dc958
musl: update references to bin_file.options
2024-01-01 17:51:19 -07:00
Andrew Kelley
6b44bddf5d
linker: remove bad NvPtx flushModule implementation
...
it's not supposed to mutate Compilation like this.
2024-01-01 17:51:19 -07:00
Andrew Kelley
c49957dbe8
fix a round of compile errors caused by this branch
2024-01-01 17:51:19 -07:00
Andrew Kelley
f54471b54c
compiler: miscellaneous branch progress
...
implement builtin.zig file population for all modules rather than
assuming there is only one global builtin.zig module.
move some fields from link.File to Compilation
move some fields from Module to Compilation
compute debug_format in global Compilation config resolution
wire up C compilation to the concept of owner modules
make whole cache mode call link.File.createEmpty() instead of
link.File.open()
2024-01-01 17:51:19 -07:00