Commit Graph

33 Commits

Author SHA1 Message Date
sthen
17c95658e6 Pull in r175057 from upstream LLVM, via FreeBSD, found by Wada Hiroyuki.
X86: Disable generation of rep;movsl when %esi is used as a base pointer.
This happens when there is both stack realignment and a dynamic alloca in the
function. If we overwrite %esi (rep;movsl uses fixed registers) we'll lose the
base pointer and the next register spill will write into oblivion.
2013-03-30 12:10:40 +00:00
brad
c54dae5771 Add some initial bits for mips64 to pass down the proper flags
to the assembler and linker. Still work in progress.

ok sthen@
2013-01-08 10:14:13 +00:00
brad
ac1ecd7415 Silence some warnings and allow passing down some feature flags to the linker.
ok sthen@
2013-01-04 01:10:30 +00:00
brad
cc75b05c01 Update to LLVM 3.2 and switces to __guard_local for stack protector support.
Initial work from landry@ with some fixes and further tweaking from pascal@ and brad@

ok sthen@ landry@
2012-12-23 20:49:29 +00:00
jasper
9319ac3f2e - drop the 'svn' suffix from llvm-config --version output.
ok sthen@
2012-10-16 18:22:30 +00:00
pascal
df44ab302a Disable PIE for now in clang until someone is masochistic enough to figure
out how to best handle enabling it by default.  Manually speficying -fpie
-Wl,-pie will still work, of course.

ok sthen@
2012-08-31 16:21:20 +00:00
sthen
85a7d74bd9 Re-sync CLang with the OBSD_LIB_SPEC now used in base (-lc for libs was
removed again). From Brad.
2012-08-29 00:45:47 +00:00
pascal
c619f16384 Mimic the new gcc -pthread semantics. From Brad.
looks good to matthew@
2012-08-21 17:51:53 +00:00
dcoppa
ef1092aee3 Remove '-lpthread'->'-pthread' hacks 2012-08-20 08:12:47 +00:00
sthen
4c3755caaf Sync with r161481 from upstream, "Revert part of r161175 which was wrong
for OpenBSD's PowerPC target". Problem pointed out by landry@.
2012-08-08 09:35:24 +00:00
sthen
eca8eaed22 Add several CLang patches from upstream via Brad.
- Only provide /usr/include in the default C header search path.
- OpenBSD does not support TLS.
- Provide target support for powerpc, arm, mips64, mips64el and sparc.
2012-08-06 22:35:26 +00:00
pascal
af7cfff551 Make stack smashing protection work with our native libc routines, and enable
it by default.

ok jsg@
2012-08-04 14:47:52 +00:00
dcoppa
cf153cacfa Fix libpthread linking (use '-pthread' instead of '-lpthread') for
cmake-based ports that use "CHECK_LIBRARY_EXISTS(pthread ...)".

Fix libpthread linking for devel/llvm too (additional care was
needed).

No fallout in a bulk build: thanks landry!
2012-06-14 09:32:00 +00:00
sthen
68d394c41c Update to LLVM 3.1.
Thanks Brad for pointing out a few problems with my original diff.
2012-05-25 09:05:49 +00:00
dcoppa
fa4bc9a99d Fix CMake check for pthread_mutex_lock: use check_library_exists()
function instead of the buggy check_symbol_exists().

ok sthen@
2012-05-05 19:24:01 +00:00
sthen
e7e448a021 Update Clang to use _REENTRANT instead of _POSIX_THREADS when using the
-pthread flag. From Brad.
2012-04-23 23:11:01 +00:00
sthen
f0bb115a15 Remove unnecessary patch to ignore -Wbounded, it was included upstream
elsewhere in the file. Reported by Amit Kulkarni.
2011-12-15 08:39:51 +00:00
sthen
7ff2ae5f79 update to LLVM/CLang 3.0, thanks sebastia@ for testing.
- switch to cmake build
- add profiling support from jsg@
2011-12-14 22:58:23 +00:00
jsg
e9fbea9c63 update to 2.9
ok sthen@ tested by matthew@ jeremy@
2011-04-09 21:43:39 +00:00
jeremy
f02872702e Bump llvm version to 2.8.
OK @sthen
2011-01-13 00:15:50 +00:00
sthen
390e9c3c97 remove ports-tree-gcc4 workarounds, use REVISION, etc. ok jsg@ 2010-07-21 22:19:01 +00:00
sthen
c40c2a56d2 Adjust LLVM/CLang to work with GCC4 in base, while still working
with ports GCC4 for arch which haven't switched yet.

With/ok jsg@.
2010-06-12 12:15:08 +00:00
jsg
84c63f751b Update to LLVM/Clang 2.7
ok sthen@
2010-04-29 16:37:09 +00:00
jsg
d264b944d0 update to 2.6
ok sthen@
2009-11-02 22:53:27 +00:00
jsg
e9acc9f4a7 Ignore bounded attribute and kprintf format for now, to reduce the number
of warnings we don't care about.

ok sthen@
2009-08-16 09:54:28 +00:00
sthen
d16432b095 Update to a newer snapshot, requested by jsg@. Fixes building autoconf
projects, upstream rolled in the OpenBSD backend with proper target-specific
definitions etc.
2009-08-09 11:26:03 +00:00
sthen
e6fe633831 - add OpenBSD config; from jsg@.
- install a symlink as a workaround to a bug identifying the path to clang-cc.

commit approved by naddy.
2009-06-25 15:25:13 +00:00
sthen
b63c0d29a3 fix manual page installation path. fixed in another tree but missed it
when I was updating; also pointed out with a diff by Moritz Grimm, thanks!
2009-06-22 00:19:01 +00:00
sthen
0fa81b8453 Update to a newer snapshot. 2009-06-21 23:13:48 +00:00
sthen
405c122be8 update to a newer snapshot; made after upstream's freeze in the
runup to 2.5 release towards the end of this month.
2009-02-08 22:55:43 +00:00
sthen
e377137feb - don't build Hello sample module, it builds a shared library with
an odd filename which doesn't get correctly identified by pkg tools,
and isn't really useful to provide in the package anyway
- cnst@ points out this is actually a post-2.4 snapshot, change the
PKGNAME accordingly
2008-11-12 15:46:32 +00:00
sthen
c2d63423f1 fix doc location, pointed out by ajacoutot 2008-11-10 12:17:54 +00:00
sthen
136611c6f3 import llvm/clang. not heavily tested yet but there's been a lot
of interest in the static analyser and it basically works, so put
it in now and link to the build later.

Low Level Virtual Machine (LLVM) is:
- A compilation strategy designed to enable effective program
  optimization across the entire lifetime of a program.
- A virtual instruction set.
- A compiler infrastructure.
- LLVM does not imply things that you would expect from a high-level
  virtual machine. It does not require garbage collection or run-time
  code generation.

some parts from chl@ and the FreeBSD port.
2008-11-10 11:25:33 +00:00