aboutsummaryrefslogtreecommitdiff
path: root/src/zig_llvm.cpp
AgeCommit message (Collapse)Author
2020-10-05stage1: Implement @reduce builtin for vector typesLemonBoy
The builtin folds a Vector(N,T) into a scalar T using a specified operator. Closes #2698
2020-09-28stage2: building DLL import lib filesAndrew Kelley
2020-04-03change the default ABI of riscv64-linux-muslAndrew Kelley
Before, this would cause a link failure when mixing Zig and C code for RISC-V targets. Now, the ABIs match and Zig and C code can be mixed successfully. I will file a follow-up issue for the ability to deal more explicitly with ABIs. closes #4863
2020-02-25Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-02-21remove sub-arch from stage1Andrew Kelley
2020-02-18improvements which allow zig to emit multiple things at onceAndrew Kelley
example: zig build-obj test.zig -femit-llvm-ir -femit-asm this will generate all three: test.o test.s test.ll
2020-01-29Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-01-23link: update to llvm 10 APIAndrew Kelley
2020-01-23fix incorrect list of sub-arches for aarch64Andrew Kelley
tests use older sub-arch that works in the older qemu
2020-01-22update zig_llvm.h and zig_llvm.cpp to llvm 10Andrew Kelley
2020-01-16zig_llvm: update CodeGenFileType usageAndrew Kelley
2020-01-16Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-01-02Use the LLVM C++ APILemonBoy
2019-12-23add zig llvm wrapper for atomicrmwVexu
2019-12-15Generate the fn pointers into the correct address spaceLemonBoy
Fixes #3645
2019-12-05implement `@call`Andrew Kelley
closes #3732
2019-10-12Add dlltool functionalityLemonBoy
Don't need no patched lld --kill-at behaviour now.
2019-10-02we have to use c++14 now for llvm10Andrew Kelley
2019-09-21Correct stack alignment for new stackLemonBoy
2019-09-10Merge remote-tracking branch 'origin/master' into llvm9Andrew Kelley
2019-09-03fix stack traces on macos when passing absolute path to root source fileAndrew Kelley
The comment added by this commit is copied here: For macOS stack traces, we want to avoid having to parse the compilation unit debug info. As long as each debug info file has a path independent of the compilation unit directory (DW_AT_comp_dir), then we never have to look at the compilation unit debug info. If we provide an absolute path to LLVM here for the compilation unit debug info, LLVM will emit DWARF info that depends on DW_AT_comp_dir. To avoid this, we pass "." for the compilation unit directory. This forces each debug file to have a directory rather than be relative to DW_AT_comp_dir. According to DWARF 5, debug files will no longer reference DW_AT_comp_dir, for the purpose of being able to support the common practice of stripping all but the line number sections from an executable. closes #2700
2019-08-28Merge remote-tracking branch 'origin/master' into llvm9Andrew Kelley
2019-08-26remove no longer needed gcc8 workaround. add gcc9 workaroundAndrew Kelley
Occasionally LLVM headers generate warnings with newer gcc versions and since we use -Werror this has to be worked around.
2019-08-16Merge remote-tracking branch 'origin/master' into llvm9Andrew Kelley
2019-08-16correct LLVM subarch names for armyvt
2019-08-13avoid the word "coroutine", they're "async functions"Andrew Kelley
2019-07-25`@frameSize` works via PrefixDataAndrew Kelley
2019-07-25calling an inferred async functionAndrew Kelley
2019-07-20always give the type to byval attributeAndrew Kelley
2019-07-16update to llvm9 trunkAndrew Kelley
2019-07-03add -ffunction-sections arg when building C objectsAndrew Kelley
the other changes in this commit are minor tidying up
2019-07-02Added ZigLLVMCreateTargetMachine and pass function-sections flagTimon Kruiper
Also added extra cache line Added the ZigLVVMCreateTargetMachine to self hosted zig code
2019-07-01Added function-section functionalityTimon Kruiper
2019-06-04Propagate DIFlags to LLVMLemonBoy
2019-05-20Build archives using the K_DARWIN format when targeting osxLemonBoy
2019-04-02more regression fixes. empty test passes againAndrew Kelley
2019-03-18workaround for Ubuntu/Debian bugAndrew Kelley
see #2076
2019-02-28Merge remote-tracking branch 'origin/master' into llvm8Andrew Kelley
2019-02-26breaking changes to the way targets work in zigAndrew Kelley
* CLI: `-target [name]` instead of `--target-*` args. This matches clang's API. * `builtin.Environ` renamed to `builtin.Abi` - likewise `builtin.environ` renamed to `builtin.abi` * stop hiding the concept of sub-arch. closes #1526 * `zig targets` only shows available targets. closes #438 * include all targets in readme, even those that don't print with `zig targets` but note they are Tier 4 * refactor target.cpp and make the naming conventions more consistent * introduce the concept of a "default C ABI" for a given OS/Arch combo. As a rule of thumb, if the system compiler is clang or gcc then the default C ABI is the gnu ABI.
2019-02-04fix vector debug info tripping LLVM assertionAndrew Kelley
2019-02-04fix vector debug info tripping LLVM assertionAndrew Kelley
2019-02-04Merge remote-tracking branch 'origin/master' into llvm8Andrew Kelley
2019-01-30introduce vector type for SIMDAndrew Kelley
See #903 * create with `@Vector(len, ElemType)` * only wrapping addition is implemented This feature is far from complete; this is only the beginning.
2019-01-24update to llvm8 trunk. all tests passingAndrew Kelley
2019-01-01Merge remote-tracking branch 'origin/master' into llvm8Andrew Kelley
2018-12-30Add DIFlagStaticMember flag to functions.alexander
Prevents LLVM from generating debug info for struct member functions with a pointer as the first parameter as though the first parameter were the implicit "this" pointer from C++.
2018-12-23llvm8: fix ZigLLVMCreateFunctionAndrew Kelley
2018-12-23llvm8: fix build errorsAndrew Kelley
2018-12-23Merge remote-tracking branch 'origin/master' into llvm8Andrew Kelley
2018-11-28work around to support debian's fork of llvm 7.0.1Andrew Kelley
it has a patch that adds an OS type, breaking the public API this commit avoids depending on the last os type enum item, but retains the safety assertion checks. closes #1788