summaryrefslogtreecommitdiff
path: root/gnu/llvm
AgeCommit message (Collapse)Author
2017-01-24PIE-by-default. Probably not suitable for upsttreaming in its current form.Mark Kettenis
2017-01-24Avoid allocating space for commons with ld -r. Already pushed upstream.Mark Kettenis
2017-01-24Handle the OpenBSD-style major/minor shared library version scheme.Mark Kettenis
Don't try to upstream this; we are considering moving to a more standard way that uses symbolic links to point the linker at the right version of shared libraries.
2017-01-24Merge LLVM 4.0.0 rc1Patrick Wildt
2017-01-24Import LLVM 4.0.0 rc1 including clang and lld to help the currentPatrick Wildt
development effort on OpenBSD/arm64.
2016-09-03Use the space freed up by sparc and zaurus to import LLVM.Pascal Stumpf
ok hackroom@
2017-01-22Disable COFF and Mach-O for OpenBSD to reduce build dependencies.Patrick Wildt
Only having ELF is perfectly fine for us. ok kettenis@
2017-01-21Make LLVM create strict aligned code for OpenBSD/arm64. We currentlyPatrick Wildt
don't enforce it yet, but we want to go down that road. Additionally the Pine64 seems to boot up with strict alignment on by default, so this also implicitly fixes efiboot on that hardware. ok kettenis@ phessler@ visa@
2017-01-20Restore setting the visibility of __guard_local to hidden for betterPhilip Guenther
code generation. Use dyn_case_or_null instead of a static cast to solve the crashes in the previous code. ok stefan@ kettenis@
2017-01-14Disable the Load Stack Guard for OpenBSD on AArch64. We don't use itPatrick Wildt
on any other platform and it causes a segfault in combination with our IR Stack Guard. "looks reasonable" kettenis@ "looks good to me" stefan@
2017-01-14Merge LLVM 3.9.1Patrick Wildt
2017-01-14Import LLVM 3.9.1 including clang and lld.Patrick Wildt
2017-01-04With clang as cross-compiler we need to make it pass the library pathPatrick Wildt
to our linker. Additionally, we need to make sure the library path is prefixed with the cross directory, which is sysroot. ok kettenis@
2016-11-28Setup clang to use OpenBSD settings and defines for our AArch64Patrick Wildt
(little-endian) target. ok phessler@
2016-09-27Disable -fstrict-aliasing per default on OpenBSD.Pascal Stumpf
cluebat & ok kettenis@
2016-09-17For now, force soft-float; our kernel doesn't support saving the FPU state yet.Mark Kettenis
ok patrick@
2016-09-17Fix types for OpenBSD/arm.Mark Kettenis
ok stefan@, jsg@, patrick@
2016-09-09Handle -p as an alias of -pg. From the ports patch.Jonathan Gray
ok patrick@
2016-09-07Backport https://reviews.llvm.org/rL279449 from upstreamStefan Kempf
ok pascal@ Original commit message: [SSP] Do not set __guard_local to hidden for OpenBSD SSP guard_local is defined as long on OpenBSD. If the source file contains a definition of guard_local, it mismatches with the int8 pointer type used in LLVM. In that case, Module::getOrInsertGlobal() returns a cast operation instead of a GlobalVariable. Trying to set the visibility on the cast operation leads to random segfaults (seen when compiling the OpenBSD kernel, which also runs with stack protection). In the kernel, the hidden attribute does not matter. For userspace code, guard_local is defined as hidden in the startup code. If a program re-defines guard_local, the definition from the startup code will either win or the linker complains about multiple definitions (depending on whether the re-defined __guard_local is placed in the common segment or not). It also matches what gcc on OpenBSD does.
2016-09-06Link to -lcompiler_rt instead of -lgcc.Pascal Stumpf
looks good to stefan@
2016-09-05libunwind relies on the EH frame header. Our OpenBSD frontend codePatrick Wildt
does not tell our linker to produce that header for statically linked binaries. Just create that header for all binaries and we are fine. ok guenther@
2016-09-05Let clang use libc++/libc++abi and its header files per default. You can stillPascal Stumpf
use the old libstdc++ by specifying -stdlib=libstdc++. with hints from/looks good to patrick@, ok kettenis@
2016-09-05Link static PIEs with the correct C runtime (rcrt0.o).Pascal Stumpf
ok kettenis@
2016-09-03Use the space freed up by sparc and zaurus to import LLVM.Pascal Stumpf
ok hackroom@