Commit Graph

7469 Commits

Author SHA1 Message Date
Andrew Kelley
92559cd02c hit a comptime limitation with computing dense sets 2020-01-21 19:40:44 -05:00
Andrew Kelley
15d5cab569 fix target_triple_zig to emit zig-compatible triples 2020-01-21 12:25:22 -05:00
Andrew Kelley
91ecce3bc0 fix cache of cpu features 2020-01-21 12:14:43 -05:00
Andrew Kelley
6793af8d8b these are not real cpu features 2020-01-21 12:14:36 -05:00
Andrew Kelley
327ad0ae89 target_triple_llvm: emit none instead of unknown 2020-01-21 03:05:56 -05:00
Andrew Kelley
1f7babbc80 properly forward baseline target cpu features to llvm 2020-01-21 03:01:20 -05:00
Andrew Kelley
0abaee79af fix self-hosted compiler regression 2020-01-21 01:51:21 -05:00
Andrew Kelley
5974f95cb7 add cpus and cpu features to zig targets 2020-01-21 01:48:25 -05:00
Andrew Kelley
0c2dde2fda add libc and glibcs to self-hosted zig targets 2020-01-21 01:31:27 -05:00
Andrew Kelley
39759b90fc make zig targets show native cpu name and features 2020-01-21 01:22:37 -05:00
Andrew Kelley
e640d01535 fixups to arch data, support any number of cpu features 2020-01-21 00:34:54 -05:00
Andrew Kelley
6118b11afa Revert "aarch64: remove CPU features that are actually just CPUs"
This reverts commit 6dd514ac8a.

This strategy won't work for arm 32-bit; instead need to try to figure
out how to get more bits into the bit set.
2020-01-20 23:15:07 -05:00
Andrew Kelley
89e107ee4e uncomment all the archs in target.zig 2020-01-20 23:14:35 -05:00
Andrew Kelley
6dd514ac8a aarch64: remove CPU features that are actually just CPUs 2020-01-20 22:49:26 -05:00
Andrew Kelley
6e88883edf import data from llvm 9 2020-01-20 22:21:45 -05:00
Andrew Kelley
f3dd9bbdac improve zig targets 2020-01-20 13:40:25 -05:00
Andrew Kelley
bf82929557 fix std.Target.Arch.parseCpuFeatureSet 2020-01-20 12:41:18 -05:00
Andrew Kelley
8f29d14073 stage1 is building. zig targets now self-hosted 2020-01-20 01:42:31 -05:00
Andrew Kelley
20af858601 some fixes 2020-01-19 21:06:41 -05:00
Andrew Kelley
e3b5e91878 do the x86 arch 2020-01-19 20:54:05 -05:00
Andrew Kelley
a313f15384 figure out zig0/stage1 and scanning for native CPU 2020-01-19 20:54:05 -05:00
Andrew Kelley
a867b43366 progress towards merging
see BRANCH_TODO file
2020-01-19 20:54:04 -05:00
Layne Gustafson
c15623428e Pass target_details to child CodeGens 2020-01-19 20:53:20 -05:00
Layne Gustafson
430077df1b Allow target details with no LLVM support 2020-01-19 20:53:20 -05:00
Layne Gustafson
62e4cc06fe Pass target details to c compiler 2020-01-19 20:53:20 -05:00
Layne Gustafson
35c681b7b1 Fix sentinel mismatch in llvm strings
Previously, buffers were used with toOwnedSlice() to create c strings
for LLVM cpu/feature strings. However, toOwnedSlice() shrinks the
string memory to the buffer's length, which cuts off the null terminator.
Now toSliceConst() is used instead, and the buffer is not deinited
so that the string memory is not freed.
2020-01-19 20:53:20 -05:00
Layne Gustafson
8902f3ca32 Enable 64bit feature for riscv64 2020-01-19 20:53:20 -05:00
Layne Gustafson
de8a5cf5f5 Remove features/cpus not in LLVM v9 2020-01-19 20:53:20 -05:00
Layne Gustafson
a5c9397539 No allocations for n.t. empty strings 2020-01-19 20:53:20 -05:00
Layne Gustafson
40ff359486 Only enable requested features 2020-01-19 20:53:20 -05:00
Layne Gustafson
ebb6f15bba Make sure llvm strings are null-terminated 2020-01-19 20:53:20 -05:00
Layne Gustafson
fd17a9962b Add defaut feature support 2020-01-19 20:53:20 -05:00
Layne Gustafson
03dd376b55 Add builtin.zig support 2020-01-19 20:53:19 -05:00
Layne Gustafson
c61856ebcf Add TargetDetails abstraction 2020-01-19 20:53:19 -05:00
Layne Gustafson
79a2747de4 Add llvm_name to feature defs 2020-01-19 20:53:19 -05:00
Layne Gustafson
e4ecdefa9a Rename subfeatures -> dependencies 2020-01-19 20:53:19 -05:00
Layne Gustafson
51372200d3 Filter out non-features 2020-01-19 20:53:19 -05:00
Layne Gustafson
c1798cb632 Add build.zig cpu and feature options 2020-01-19 20:53:19 -05:00
Layne Gustafson
b3324f1901 Add cpu/feature to cache hash 2020-01-19 20:53:19 -05:00
Layne Gustafson
bd6ef21f85 Add cpu/feature specification to cmndline 2020-01-19 20:53:19 -05:00
Layne Gustafson
c8f1e0d6d8 Remove llvm_name from features 2020-01-19 20:53:19 -05:00
Layne Gustafson
c131e50ea7 Switch CPU/features to simple format 2020-01-19 20:53:18 -05:00
Layne Gustafson
9d66bda264 Fix spacing in main.cpp 2020-01-19 20:53:18 -05:00
Layne Gustafson
5bc4690d85 Make targets cmd able to list CPUs and features 2020-01-19 20:53:18 -05:00
Layne Gustafson
21908e100e Fix CPU and feature defs 2020-01-19 20:53:18 -05:00
Layne Gustafson
8ac138a318 Add parseArchTag and fix parseArchSub 2020-01-19 20:53:18 -05:00
Layne Gustafson
8f191e0166 Update term feature deps -> subfeatures 2020-01-19 20:53:18 -05:00
Layne Gustafson
0f46c12f78 Create initial target details infrastructure 2020-01-19 20:53:15 -05:00
LemonBoy
7a1cde7206 Fix wrong error code being returned in enum analisys
Fixes the assertion failure seen in #4233
2020-01-19 13:28:27 -05:00
Andrew Kelley
e491b2f5a7 Merge pull request #4231 from LemonBoy/more-builtin-work1
More patches for compiler-rt
2020-01-19 13:27:36 -05:00