Jakub Konka
78ec7b671d
Add mechanism for growing/shrinking text blocks
2020-10-13 08:38:17 +02:00
Jakub Konka
0b77152faa
Add local and offset free lists
2020-10-13 08:38:17 +02:00
Andrew Kelley
c19dcafa17
Merge remote-tracking branch 'origin/master' into llvm11
2020-10-12 17:57:35 -07:00
Vignesh Rajagopalan
2ab0c7391a
Rename .macosx to .macos
2020-10-12 18:56:25 -04:00
Sébastien Marie
161eb4a000
initialize std.os.argv in stage1 compiler. it is needed for selfExePath under OpenBSD
2020-10-11 12:25:16 +00:00
Sébastien Marie
9ff51f22b4
openbsd: address link/Elf.zig comments
...
- restore correct behaviour on Android target for appending "crtend_android.o"
- some nits
2020-10-11 10:12:40 +00:00
Sébastien Marie
f33a610c84
add minimal openbsd support
2020-10-11 08:23:36 +00:00
Andrew Kelley
9f8f446435
fixups to previous commit
...
* std.fs.Dir.readFile: add doc comments to explain what it means when
the returned slice has the same length as the supplied buffer.
* introduce readSmallFile / writeSmallFile to abstract over the
decision to use symlink or file contents to store data.
2020-10-09 16:45:39 -07:00
mlarouche
57912964af
Use regular file for caching stage 1 hash digest instead of symlink, fix zig build caching on Windows
...
Fix #6500
2020-10-09 16:50:43 -04:00
Jakub Konka
04b0ffdd13
Merge pull request #6577 from kubkon/macho-trie
...
stage2: add export trie generation in MachO linker
2020-10-09 17:41:52 +02:00
Jakub Konka
8dc4023615
Apply nitpick: top-level doc comments
...
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-09 17:40:37 +02:00
Josh Wolfe
bc6904eccc
include compiler_rt and c for wasm static libraries
2020-10-09 01:54:42 -04:00
Andrew Kelley
4053b95d8e
run update_clang_options on llvm 11 rc6
2020-10-08 16:13:37 -07:00
Andrew Kelley
8b7539bd95
Merge remote-tracking branch 'origin/master' into llvm11
...
Conflicts:
src/clang.zig
Master branch renamed an enum; this branch gave it an explicit tag type
and explicitly initialized values. This commit combines the changes
together.
2020-10-08 15:47:45 -07:00
Jakub Konka
ba41e599bf
Clean up writing the trie into ULEB128 byte stream
...
Prealloc as much as possible to improve alloc performance.
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-08 19:53:23 +02:00
Jakub Konka
5f86505cf7
Fix ULEB128 encoding of trie
...
Use algorithm described in official Apple `ld64` implementation.
Link: https://opensource.apple.com/source/ld64/ld64-123.2.1/src/abstraction/MachOTrie.hpp
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-08 19:53:03 +02:00
Tadeo Kondrak
83eda21488
zig_clang/translate_c: Use opaque declarations in Zig
2020-10-08 12:29:59 +03:00
Tadeo Kondrak
0e57f220fb
stage1: Disallow arrays in function parameters or return types
...
Closes #6535 .
2020-10-08 04:17:32 -04:00
xavier
eb33394d14
notice more kinds of optimization flags and debug flags
...
Closes #6091
2020-10-07 18:43:05 -04:00
Jakub Konka
ea44d12d1b
Add writeULEB128Mem test and couple fixes
...
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-07 23:54:51 +02:00
Andrew Kelley
95a37373e9
Merge pull request #6421 from tadeokondrak/opaque-syntax
...
Add opaque syntax that allows declarations
2020-10-07 16:58:50 -04:00
Jakub Konka
b5b25d38a8
Fix improper reuse of global symbols in MachO
...
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-07 20:34:40 +02:00
Jakub Konka
bdab4f53c1
Move trie structure into its own file-module
...
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-07 20:34:34 +02:00
Jakub Konka
b13b36a71d
Approach using array list for auto mem mgmt
...
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-07 20:33:47 +02:00
Jakub Konka
e76fb8d8c8
Add incomplete writing of trie to bytes buffer
...
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-07 20:33:28 +02:00
Jakub Konka
f0a73df8e7
Add prototype for export trie generation in MachO linker
...
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-07 18:31:02 +02:00
Jakub Konka
07c33dfc95
Remove obsolete addPadding fn and callsites from MachO linker
...
This is no longer needed due to the way writing to the output
file is structured.
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com >
2020-10-07 17:18:37 +02:00
Tadeo Kondrak
0a6863a267
Remove .Cold calling convention.
...
This isn't a stable, defined calling convention, so it shouldn't be
grouped in with the others.
Closes https://github.com/ziglang/zig/issues/6556
2020-10-07 04:31:20 -04:00
pfg
ae161863db
stage1: improve error messages for missing try statements
2020-10-07 03:50:11 -04:00
Andrew Kelley
b5a36f676b
Merge remote-tracking branch 'origin/master' into llvm11
...
Conflicts:
cmake/Findllvm.cmake
The llvm11 branch changed 10's to 11's and master branch added the
"using LLVM_CONFIG_EXE" help message, so the resolution was to merge
these changes together.
I also added a check to make sure LLVM is built with AVR enabled, which
is no longer an experimental target.
2020-10-07 00:46:05 -07:00
Andrew Kelley
b2b0bf0506
fixups for the previous commit
...
* std.fs.File.copyRange and copyRangeAll return u64 instead of usize -
the returned value is how much of the `len` is transferred, so the
types should match. This removes the need for an `@intCast`.
* fix typo that removed a subtraction
* Fix the size of codegen.AnyMCValue which gave me a compile error when
I tried to build self-hosted for i386-linux.
* restore the coercion to u64 of syms_sect.sh_info. We want to make
sure the multiplication happens with 64 bits and not the smaller type
used by the ELF format.
* fix another offset parameter in link/Elf.zig to be u64 instead of usize
* add a nice little TODO note to help out Jakub
* FmtError already has FileTooBig in it; we just need to return it.
2020-10-07 00:39:13 -07:00
Timon Kruiper
bd7eab573a
Fix building the zig compiler for 32-bit targets
2020-10-06 23:39:58 -07:00
Noam Preil
7d69e1d84e
Rename variables in resolvePeerTypes for clarity
2020-10-07 02:36:04 -04:00
Noam Preil
de093879cc
Fix peer type resolution
2020-10-07 02:31:47 -04:00
Tadeo Kondrak
bf4bfe54ac
Update compile error test for field access of opaque type
2020-10-06 22:08:30 -06:00
Tadeo Kondrak
0a56390230
stage1: use size_t over int as index in resolve_opaque_type
2020-10-06 22:08:28 -06:00
Tadeo Kondrak
d71f339395
stage1: disallow fields in opaque types
2020-10-06 22:08:27 -06:00
Tadeo Kondrak
d5b8172a82
translate_c: emit opaque {} instead of @Type(.Opaque)
2020-10-06 22:08:26 -06:00
Tadeo Kondrak
2b4b03d301
Update zig files for opaque type syntax
2020-10-06 22:08:25 -06:00
Tadeo Kondrak
069fbb3c01
Add opaque type syntax
2020-10-06 22:08:24 -06:00
travisstaloch
dd4771a5d2
cache-hash: add test_filter and test_name_prefix ( #6583 )
2020-10-06 19:36:14 -04:00
LemonBoy
87807d53dd
stage2: Fix arg processing for zig run
...
* Stop parsing arguments after `--`
* Calculate the correct index for the first argument after `--`
2020-10-06 19:31:57 -04:00
Noam Preil
7b88215a49
Replace error message with unreachable
2020-10-06 15:09:57 -04:00
Noam Preil
a2e1639d6d
Peer type resolution: comptime_int decay to other int
2020-10-06 15:09:57 -04:00
Noam Preil
ea7b2750c8
CBE: addition and subtraction
2020-10-06 15:09:57 -04:00
Noam Preil
e06ba9e86e
CBE: properly resolve Insts
2020-10-06 15:09:57 -04:00
Noam Preil
9ef6c0a035
CBE: utilize per-function arena allocator
2020-10-06 15:09:56 -04:00
Noam Preil
9979719a9d
Stage2 peer type resolution: comptime_int + other_int_type
2020-10-06 15:09:56 -04:00
Noam Preil
ce29fc0947
Make indentation adjustable (hardcode 4 spaces for now)
2020-10-06 15:09:56 -04:00
Vexu
58502b8bfe
translate-c: respect C operator precedence in macros
2020-10-05 22:26:11 -04:00