Commit Graph

735 Commits

Author SHA1 Message Date
Eric Christopher
ffee5728af Move the AC_PROG_CC checks earlier in the configure file. The lateness
of the original check meant that configure was caching the default
CC check and using that instead of the result of AC_PROG_CC in both
configure checks and during compilation.

This wasn't affecting C++ so it was hard to notice.

Regenerate configure.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139937 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-16 20:36:25 +00:00
Eric Christopher
42634836e9 Have the llvm configure process look for clang, then llvm-gcc, and then gcc
on all platforms.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139934 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-16 20:36:16 +00:00
Ivan Krasin
9976bac385 Update config.sub, config.guess and configure.
The motivation to do that:

1. Now, llvm would use the stock config.sub. Before that we had an
uncommitted FreeBSD-related patch. Now, it has been upstreamed and
comes back. It means that it would be easier to update these files in
the next time (less magic knowledge)

2. Fix a typo for pseudo-CPUs: 32e[lb] -> [lb]e32, 64e[lb]->[lb]64.
One of these CPUs is used for PNaCl and it was not really convenient
to have a CPU that starts with a digit.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138323 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-23 06:43:49 +00:00
Ivan Krasin
fb23462889 Add NativeClient operating system support.
This patch adds support of NativeClient (*-*-nacl) OS support to LLVM.
It's already supported in autoconf/config.sub.

The motivation for this change is to start upstreaming PNaCl work. The
whole set of patches include llvm backends (i686, x86_64, ARM),
llvm-gcc (probably, would not be upstreamed because it's deprecated)
and clang (the work has been just started, the amount of changes is
going to be low and the most of the work is expected to be done close
to the mainline).




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138005 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18 22:54:21 +00:00
Ivan Krasin
857fd8fcda Update autoconfig/config.{sub,guess} to the latest version
from the GNU upstream: git://git.savannah.gnu.org/config.git

1. It eliminates a local LLVM patch for auroraux (because, the
mainline config.sub has already got support of auroraux)
2. It adds several new recognized target cpus and operating systems
(in particular, PNaCl)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137984 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18 21:23:18 +00:00
Chad Rosier
11066fb937 Update the default bug report url in autoconf.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136721 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-02 20:53:43 +00:00
Evan Cheng
e78085a3c0 Combine all MC initialization routines into one. e.g. InitializeX86MCAsmInfo,
InitializeX86MCInstrInfo, etc. are combined into InitializeX86TargetMC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135812 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-22 21:58:54 +00:00
Bruno Cardoso Lopes
dca6cdd6a1 Added the infrastructute necessary for MIPS JIT support. Patch by Vladimir
Stefanovic. I removed the part that actually emits the instructions cause
I want that to get in better shape first and in incremental steps. This
also makes it easier to review the upcoming parts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135678 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-21 16:28:51 +00:00
Evan Cheng
439661395f Introduce MCCodeGenInfo, which keeps information that can affect codegen
(including compilation, assembly). Move relocation model Reloc::Model from
TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135468 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-19 06:37:02 +00:00
Chad Rosier
96212ad674 Add new configure option, --with-bug-report-url, which allows users/vendors to
specify where bug reports should be submitted.
Part of rdar://9575623

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135233 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-15 00:37:26 +00:00
Evan Cheng
1abf2cb59b Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135219 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-14 23:50:31 +00:00
Douglas Gregor
6ced1d12dd Add initial *-*-rtems* target, from Joel Sherrill
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134282 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-01 22:41:06 +00:00
Daniel Dunbar
e2a91a76df build/configure: Add support for --with-extra-ld-options flag (to provide extra
options just to pass to ld).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133206 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-16 22:30:38 +00:00
Benjamin Kramer
b73cd94292 Happy new year.
Only 163 days late!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132895 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-12 15:26:54 +00:00
Roman Divacky
3de510e74e Use processor name in the target triple. This fixes PowerPC64 to generate
64bit code for example.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132627 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-04 06:15:42 +00:00
John McCall
fe754ab90a ...this is not a good commit day for me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132294 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-29 19:44:55 +00:00
John McCall
832a9d1a76 On Darwin ARM, set the UNWIND_RESUME libcall to _Unwind_SjLj_Resume.
This is important for the correct lowering of unwind instructions
(which doesn't matter at all) and llvm.eh.resume calls (which does).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132291 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-29 19:39:04 +00:00
Duncan Sands
fcc482e487 The dragonegg option to disable LLVM optimizations changed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131903 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-23 16:50:29 +00:00
Peter Collingbourne
7be3a60617 Re-add the autoconf rule for the docs/doxygen.cfg file.
For some reason this was not reverted when r103213 was.

At the same time, add an optional rule for clang's doxygen.cfg.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131279 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-13 03:27:56 +00:00
NAKAMURA Takumi
6073a05240 Windows/DynamicLibrary.inc: Clean up ELM_Callback. We may check the decl instead of the versions of individual libraries.
autoconf: Add checking ELM_Callback decl for mingw32 and mingw-w64.
cmake/config-ix.cmake: Add checking ELM_Callback decl for win32.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130657 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-01 13:29:49 +00:00
Chris Lattner
7a2bdde0a0 Fix a ton of comment typos found by codespell. Patch by
Luis Felipe Strano Moraes!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-15 05:18:47 +00:00
Jan Sjödin
6e70cc1f97 Check that the AsmParser exists for the native target to enable initialization
function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127626 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-14 22:12:35 +00:00
Jan Sjödin
7263d71cd9 Missing file from previous commmit (127341) for InitializeTargetAsmParser function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127345 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 18:36:40 +00:00
Bill Wendling
ebc2fc1e2c Change the next release number to 3.0svn.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127213 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 03:00:02 +00:00
NAKAMURA Takumi
e29b0aca51 lib/Support/Errno.cpp: Check strerror_s() with HAVE_DECL_STRERROR_S in config.h.*.
AC_CHECK_FUNCS seeks a symbol only in libs. We should check the declaration in string.h.

FIXME: I have never seen mingw(s) have strerror_s() (not _strerror_s()).
FIXME: Autoconf/CMake may seek strerror_s() with the definition MINGW_HAS_SECURE_API in future.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125172 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-09 04:18:48 +00:00
NAKAMURA Takumi
1f6832a858 Windows/DynamicLibrary.inc: Split explicit symbols into explicit_symbols.inc.
config.h.* have conditions whether each symbol is defined or not.
Autoconf and CMake may check symbols in libgcc.a for JIT on Mingw.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124950 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-05 15:11:53 +00:00
Daniel Dunbar
5cd067f558 configure: Add checks for <sys/uio.h> and writev().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124769 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-03 02:39:58 +00:00
NAKAMURA Takumi
8eac886216 autoconf: Add --disable-embed-stdcxx to suppress linking libstdc++.a into llvm.dll with --enable-shared on Cygming.
Cygwin has stdc++.dll in it's distribution, and we can assume distro's stdc++.dll might be available.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122622 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-29 03:59:14 +00:00
NAKAMURA Takumi
0dc8439f54 autoconf: [PR7874] Add --disable-pthreads to suppress detecting pthreads on certain hosts.
This would be needed to build pthread*.dll-free distribution on recent MinGW-MSYS distros.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122621 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-29 03:59:03 +00:00
Eric Christopher
031d30781a Use GZIPBIN instead of GZIP. Apparently gzip uses GZIP as an environment
variable for args you want to default pass to gzip.

Patch based on one by asau@inbox.ru.

Fixes PR8758.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121449 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10 01:31:51 +00:00
Daniel Dunbar
bf48816daf autoconf: Stop lying to me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121222 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-08 01:48:03 +00:00
Eric Christopher
51e57139b3 Two things: Fix testcase to use extern - otherwise the link will always
succeed. Also make the testcase clearer as to what we're doing and
emit a checking notification to the log.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121101 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-07 02:05:42 +00:00
Eric Christopher
481d402ab0 Apparently OS X 10.4 doesn't have __crashreporter_info__.
Try to fix building on the wayback machine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120801 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-03 07:45:22 +00:00
Michael J. Spencer
1f6efa3996 Merge System into Support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-29 18:16:10 +00:00
Duncan Sands
1ac320ebb1 It seems inconsistent to have LLVMCC_EMITIR_FLAG and
LLVMGCC_DISABLEOPT_FLAGS, one with CC in it, the other
with GCC.  Rename LLVMGCC_DISABLEOPT_FLAGS to
LLVMCC_DISABLEOPT_FLAGS.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120151 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25 17:57:43 +00:00
Duncan Sands
1526b19b87 Initial support for being able to specify the llvm-gcc to use like this:
--with-llvmgcc="gcc-4.5 -fplugin=dragonegg.so"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120149 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25 17:47:42 +00:00
Chris Lattner
e15f2e17ea fix the autoconf script to detect "has asmprinter"ness of a target by
looking for lib/Target/*AsmPrinter.cpp.  Fix llvm-config to handle targets
that don't have an explicit AsmPrinter library.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119057 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-14 19:10:47 +00:00
Chris Lattner
c476ed93f1 remove JIT support from the Alpha backend. The JIT will be moving to MC,
and the Alpha backend isn't MCized yet.  Approved by Andrew.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119051 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-14 18:24:41 +00:00
Rafael Espindola
9d9ae9fb59 Add --enable-docs. Patch by NAKAMURA Takumi.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118918 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-12 19:24:06 +00:00
Tobias Grosser
a84b567713 Detect if llvm-gcc is built on dragonegg.
Store the flags needed to disable optimizations and to emit LLVM-IR depending on
the version of llvm-gcc used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118684 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-10 16:31:34 +00:00
Tobias Grosser
baaadb2672 Add polly support to the build system.
Update the cmake and autoconf build system to compile polly
as a shared library if it is checked out into tools/polly. In case
polly is not checked out, nothing changes.
This models the way clang can be added to llvm if checked out to tools/clang.

Also rebuild configure.

Patch contributed by ether.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117755 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30 00:54:26 +00:00
Chandler Carruth
6b241160ed First step to allowing the resource directory of Clang to be adjusted for
strange packaging environments. The primary result of this is to expose
a (normally empty) CLANG_RESOURCE_DIR string in the autoconf and CMake builds.
This will in turn be used by a subsequent commit to Clang.

Regenerated configure and config.h.in thanks to Nick. =D


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116802 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-19 08:21:25 +00:00
Eric Christopher
14074e8ec4 Fix the last two commits to configure - configure is a generated file.
Made necessary edits to configure.ac and regenerated.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116291 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-12 02:42:05 +00:00
Dan Gohman
48fd5a79e0 Add support for viewing graphviz graphs with xdot.py.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114832 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-27 16:28:34 +00:00
Dan Gohman
3f2f21e640 Attempt to support platforms which don't have fenv.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114196 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17 20:06:27 +00:00
Nick Lewycky
f7a3c50183 Create PTX backend. Patch by Che-Liang Chiou!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113235 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-07 18:14:24 +00:00
Eric Christopher
f2ca8e6477 Update to 2.9 post-2.8 branch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113159 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-06 18:47:00 +00:00
Eric Christopher
753f3265da Fix LLVM target initialization to deal with sociopathic outside projects
that like to randomly define things like "X86", regenerate autoconf bits
and update cmake.

Fixes PR7852.

Patch by Xerxes Rånby!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112499 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-30 18:34:48 +00:00
Chris Lattner
885b661e10 remove the MSIL backend. It isn't maintained, is buggy, has no testcases
and hasn't kept up with ToT.  Approved by Anton.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112375 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-28 16:33:36 +00:00
Eric Christopher
b72573e5a6 Remove getsect checks, the result is unused and is broken anyhow.
Fixes PR7967.

Owen: You added these, any reason?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112041 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-25 08:44:54 +00:00
Mikhail Glushenkov
b3d36293c2 llvmc: remove dynamic plugins.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111094 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-15 07:07:12 +00:00
Daniel Dunbar
ee0f32d723 configure: Add detection of the linker version string.
- Review appreciated, as long as you understand that I understand that this is
   a horrible hack.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110883 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 23:53:59 +00:00
Eric Christopher
d442d2846a Add a bit of a hack to avoid multiple defines of variables in
config.h and llvm-config.h.  This could probably be improved.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110547 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-08 09:18:29 +00:00
Eric Christopher
eec5008e77 Fix PR7809 by creating a header for just llvm variables that can be
included in exported interfaces.  Update a couple of exported interfaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110532 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-08 02:44:17 +00:00
Dan Gohman
4b3938494c Fix a typo in a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110211 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-04 16:48:36 +00:00
Dan Gohman
56fb5f920e Remove CVS artifacts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110207 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-04 16:25:01 +00:00
Daniel Dunbar
b1247c313d build: Add LLVM_NATIVE_ARCHNAME, which has the sensible value, without "Target"
appended.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110109 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-03 14:26:17 +00:00
Eric Christopher
475b3d3856 Use a C++ compiler for the atomic builtin check since we'll
be using a C++ compiler to build.

Patch by Török Edwin!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109646 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-28 20:26:34 +00:00
Eric Christopher
86fa2f2540 Try to work around the relative install-sh path problem.
Patch from Eli.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109163 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-22 21:13:40 +00:00
Owen Anderson
4afb30991a Remove extraneous character.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108739 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-19 19:41:52 +00:00
Owen Anderson
ba3fe69617 Add support for detecting <mach-o/getsect.h> and the getsect() function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108737 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-19 19:24:37 +00:00
Eric Christopher
4411fbe25e Pull in the libCrashReporterClient.a information with a warning comment.
Remove library check and regenerate configure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107028 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-28 18:25:51 +00:00
Eric Christopher
654dee4875 Look for and use a different darwin crash reporter library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106576 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22 21:01:04 +00:00
Dan Gohman
943005e094 Fix a spello affecting platforms where the configure check fails.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105273 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-01 16:22:27 +00:00
Dan Gohman
da612d6226 -retain-symbols-file is not what it seems. Update the makefiles
and configury to use --version-script.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105271 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-01 14:56:56 +00:00
Daniel Dunbar
dd464df687 Add new configure option, --disable-timestamps, intended to turn off anything which would mess up binary/object comparisons. Currently:
- Disables 'Built on ...' in 'foo --version'.
 - Disables timestamps from being embedded into .dir files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103423 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-10 20:11:56 +00:00
mike-m
68cb31901c Overhauled llvm/clang docs builds. Closes PR6613.
NOTE: 2nd part changeset for cfe trunk to follow.

*** PRE-PATCH ISSUES ADDRESSED

- clang api docs fail build from objdir
- clang/llvm api docs collide in install PREFIX/
- clang/llvm main docs collide in install
- clang/llvm main docs have full of hard coded destination
  assumptions and make use of absolute root in static html files;
  namely CommandGuide tools hard codes a website destination
  for cross references and some html cross references assume
  website root paths

*** IMPROVEMENTS

- bumped Doxygen from 1.4.x -> 1.6.3
- splits llvm/clang docs into 'main' and 'api' (doxygen) build trees
- provide consistent, reliable doc builds for both main+api docs
- support buid vs. install vs. website intentions
- support objdir builds
- document targets with 'make help'
- correct clean and uninstall operations
- use recursive dir delete only where absolutely necessary
- added call function fn.RMRF which safeguards against botched 'rm -rf';
  if any target (or any variable is evaluated) which attempts
  to remove any dirs which match a hard-coded 'safelist', a verbose
  error will be printed and make will error-stop.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103213 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-06 23:45:43 +00:00
Daniel Dunbar
753b43c065 Default OPTIMIZE_OPTION to -O2 on FreeBSD, at the request of the Clang/FreeBSD
folks. LLVM/Clang is miscompiled by the standard GCC at -O3.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102719 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-30 17:12:23 +00:00
Dan Gohman
39ed6789c5 Fix an autoconf bug: The second argument to AC_LANG_PROGRAM is code that
gets placed inside a main function, and should not itself be a main
function. This is silently hidden in GCC-hosted builds because the
inner main looks like a nested function declaration, which GCC supports.
In builds with compilers which do not support nested functions (by default),
this was causing an error, which caused these autoconf checks to fail, 
leaving their options disabled.

This fixes test/Feature/load_module.ll on x86_64-unknown-linux-gnu
llvm-gcc selfhost builds, among other things.

This also includes a regenerated configure, as the diff is small and telling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102288 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 00:12:20 +00:00
Dan Gohman
e05f609b61 Add an autoconf check for -retain-symbols-file and conditionalize
use of that option with it. This eliminates an imprecise "Linux"
test, and should help support old versions of gold.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101560 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-16 22:58:15 +00:00
Eric Christopher
e429182c01 Add a check for posix_spawn.
Regenerate configure and other autoconf files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101444 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-16 05:14:21 +00:00
Daniel Dunbar
195d2dec10 configure: Fix default value for optimize_option, I messed up the test condition
in r86005 and unintentionally changed the default from -O3 to -O2.

 - It's odd the things automated perf testing turns up! :)

 - Also, the configure diff is messed up slightly. It looks like someone either
   didn't regenerate configure correctly (or I didn't), or autoconf has some
   funnyness in it. Eric, any ideas?

This has been at -O2 for so long, that I am slightly nervous that this change
will uncover miscompiles of LLVM on other systems. If that is the case, I think
we should just set the default universally at -O3, and let developers/vendors
use -O3 if they want it and have tested it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100941 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-10 18:56:24 +00:00
Chris Lattner
21aa347c28 add minix support, patch by Kees van Reeuwijk! PR6797
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100895 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-09 20:45:04 +00:00
John Criswell
52c02866ba Fixed spurious warning problem noticed by Daniel Dunbar. The configure script
now configures prerequisite projects individually but also ignores them in the
big project switch statement to avoid the incorrect warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99506 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-25 13:59:09 +00:00
John Criswell
0157f50437 Force configuration of some projects before others. In particular, some
projects rely upon llvm-gcc, the LLVM test suite, and poolalloc.  This ensures
that the aforementioned projects have their object trees created first so that
other projects can find their object trees when they themselves are configured.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98998 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-19 21:31:39 +00:00
Tanya Lattner
ca7d8edb01 Bump version number.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98989 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-19 21:19:10 +00:00
John Criswell
5a12971246 Updated copyright year to 2010.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98985 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-19 21:04:16 +00:00
Jeffrey Yasskin
f28411f732 Tell Valgrind when we modify already-executed machine code so it knows
to re-instrument the code.  We depend on the system valgrind.h to
avoid adding a new license.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98529 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-15 04:57:55 +00:00
Eric Christopher
ec27496f4a Move the docsdir to /usr/share/doc/llvm to match other projects.
Fixes PR6267.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97549 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-02 05:17:21 +00:00
Eric Christopher
c771850380 Make sure we save CXXFLAGS before setting it as pedantic and regenerate
configure.

Fixes PR6388.

Patch by Yann Droneaud!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97548 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-02 05:06:54 +00:00
John Criswell
7def293487 Added SAFECode (safecode) to the list of projects to automatically configure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97179 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-25 22:57:19 +00:00
Jeffrey Yasskin
c90171961d Try r96559 for the third time. This time the shared library is only built if
--enable-shared is passed to configure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97119 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-25 06:34:33 +00:00
Chris Lattner
9792de7363 fix PR5954, patch by Roman Divacky.
I don't have a great way to test this myself (it's linux/bsd only), 
but Roman says it works. :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97069 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-24 22:33:41 +00:00
Jeffrey Yasskin
407fbdd161 Roll back r96959 again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96981 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 20:53:37 +00:00
Wesley Peck
a70f28ce7d Adding the MicroBlaze backend.
The MicroBlaze is a highly configurable 32-bit soft-microprocessor for
use on Xilinx FPGAs. For more information see:
http://www.xilinx.com/tools/microblaze.htm
http://en.wikipedia.org/wiki/MicroBlaze

The current LLVM MicroBlaze backend generates assembly which can be
compiled using the an appropriate binutils assembler.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96969 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 19:15:24 +00:00
Jeffrey Yasskin
ea6c39d417 Roll r96559 forward again, adding libLLVM-2.7svn.so to LLVM. This links 3 of
the examples shared to make sure the shared library keeps working.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96959 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 18:10:07 +00:00
Daniel Dunbar
9851567a10 Initial configure support for using Clang as the LLVM capable compiler.
Comes in two parts:
 1. Use --with-clang=path/to/clang/compiler to select an installed clang, or
    --with-built-clang to have the makefiles use the clang which will be built
    as the LLVM capable compiler. If neither is given, --with-built-clang will
    be used if the Clang sources are checked out into the standard location
    (tools/clang).

 2. Use --with-llvmcc={llvm-gcc,clang,none} to specify which LLVM capable
    compiler to use. If not given, then llvm-gcc will be used if available,
    otherwise Clang.

Makefile support still to come.

Eric, Doug, Chris, seem reasonable?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96934 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 10:00:49 +00:00
Daniel Dunbar
e209c38303 Kill off unused LLVMGCCLIBEXEC make variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96910 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 07:56:34 +00:00
Daniel Dunbar
951fd6dfad Kill off LLVMGCCARCH and LLVMGCC_VERSION make variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96909 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 07:56:31 +00:00
Daniel Dunbar
99d9863cce Kill off LLVMGCC_MAJVERS make variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96907 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 07:56:22 +00:00
Jeffrey Yasskin
2155d459a7 Roll back the shared library, r96559. It broke two darwins and arm, mysteriously.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96569 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18 04:43:02 +00:00
Jeffrey Yasskin
f6afae2f49 Add a shared library for LLVM, named libLLVM2.7svn.(so|dylib), and add an
--enable-shared configure flag to have the tools linked shared. (2.7svn is just
$(LLVMVersion) so it'll change to "2.7" in the release.)  Always link the
example programs shared to test that the shared library keeps working.

On my mac laptop, Debug libLLVM2.7svn.dylib is 39MB, and opt (for example) is
16M static vs 440K shared.

Two things are less than ideal here:
1) The library doesn't include any version information. Since we expect to break
the ABI with every release, this shouldn't be much of a problem. If we do
release a compatible 2.7.1, we may be able to hack its library to work with
binaries compiled against 2.7.0, or we can just ask them to recompile. I'm
hoping to get a real packaging expert to look at this for the 2.8 release.
2) llvm-config doesn't yet have an option to print link options for the shared
library. I'll add this as a subsequent patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96559 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18 02:36:02 +00:00
Jeffrey Yasskin
bc83d064c3 Make --disable-libffi work on systems with libffi installed. Also
make no-ffi the default even on systems with libffi.  This fixes
http://llvm.org/PR5018.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95712 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 23:03:44 +00:00
Jeffrey Yasskin
1611ebbbff Reconfigure with autoconf-2.60, and fix autoconf.ac to work with that version.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95191 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-03 02:11:49 +00:00
Torok Edwin
f6ce9ef66e Remove unneeded checks from configure.ac.
HAVE_{BI,STD,FWD}_ITERATOR and HAVE_NAMESPACES were not used in the code.
bison and flex are no longer used.
CAN_DLOPEN_SELF was never used either.
AC_PROG_LIBTOOL is not needed since we don't use libtool, we only need the
libltdl checks for dlopen.
Add check for AR, it used to be done by AC_PROG_LIBTOOL.
AC_TYPE_SIGNAL is deprecated, follow autoupdate's suggestion and replace with
void.
Remove unused m4 files.
Configure can now be generated using autoconf 2.65 too, without any warnings!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94534 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-26 08:48:04 +00:00
Torok Edwin
18aeeaad37 Fix autoconf 2.65 warning (don't use _cv_ inside AC_CACHE_VAL).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94533 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-26 08:43:05 +00:00
Anton Korobeynikov
0addbf5817 Proper deduce z/System LLVM target from target triple when
--enable-targets=host is specified.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92762 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-05 20:45:13 +00:00
Rafael Espindola
d6c8ec6546 Fix typos. Thanks to John Tytgat for noticing it!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90728 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-07 00:27:35 +00:00
Daniel Dunbar
fa3f0b9bc2 Add CMake and configure logic to create llvm/Config/Disassemblers.defs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89839 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-25 04:30:13 +00:00
Edward O'Callaghan
2b5e6b1c9c autoconf config.* claims to not know about auroraux triple.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89301 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19 02:25:50 +00:00
Rafael Espindola
420d23c3d6 Add configure options for specifying where to look for libstdc++.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88943 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-16 19:46:55 +00:00
Rafael Espindola
7f9ec910a3 Add the --with-c-include-dirs to llvm's configure.
The clang patch is next.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86955 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-12 05:46:09 +00:00
Daniel Dunbar
1fce948ccb configure: Add --with-optimize-option, for setting the default value of
OPTIMIZE_OPTION.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86005 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-04 04:32:50 +00:00
Julien Lerouge
8039e03777 Add an autoconf test to check for optional compiler flags like
-Wno-missing-field-initializers or -Wno-variadic-macros.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85147 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-26 19:58:44 +00:00
Chandler Carruth
8b67f774e9 Move DataTypes.h to include/llvm/System, update all users. This breaks the last
direct inclusion edge from System to Support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85086 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-26 01:35:46 +00:00
Edward O'Callaghan
5da60469f9 Undo pthread patch from rev. 83930 & 83823. Credit to Paul Davey.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84083 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-14 11:12:33 +00:00
Edward O'Callaghan
2b19d69553 Provide AuroraUX triple support in configure. Credit to - Paul Davey.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84067 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-14 00:44:50 +00:00
Edward O'Callaghan
df40664a63 Haiku porting patches, Credit to Paul Davey.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83823 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-12 04:57:20 +00:00
Jeffrey Yasskin
fe897b2b32 Fix the OProfile part of PR5018. This fixes --without-oprofile, makes
it the default, and works around a broken libopagent on some Debian
systems.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83503 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-07 23:22:42 +00:00
Nick Lewycky
166b2b169a Fix configure bug that only shows up in a clean build. Don't try to invoke gcc
until after the compiler itself has been set up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83051 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-29 06:18:00 +00:00
Nick Lewycky
558aef86c2 On Linux, uname -m reports the kernel type. Some Linux systems are 32-bit but
with a 64-bit kernel, which confuses LLVM. Make LLVM double-check this by
checking which defines the system gcc actually sets.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83047 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-29 05:40:45 +00:00
Jeffrey Yasskin
7fd82e56a8 Enable -g with DEBUG_SYMBOLS and --enable-debug-symbols instead of
DEBUG_RUNTIME.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82906 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-27 17:47:29 +00:00
Nick Lewycky
68cecbde18 Leave a pointer to the documentation so that people don't end up change one but
not the other in the future.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82887 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-27 04:57:35 +00:00
Jeffrey Yasskin
b7a8d400be Fix a compile failure introduced by r82675 on MinGW which doesn't have
setenv().  This patch just disables the test rather than getting putenv() to
work.  Thanks to Sandeep Patel for reporting the problem.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82797 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-25 21:07:20 +00:00
Jeffrey Yasskin
e04701a760 PR4047: Permit configure --enable-targets=host,cpp for example. "host" has the
same effect that "host-only" used to have, but can be combined with other
targets.  host-only is still available as a synonym but no longer documented.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82634 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-23 17:05:42 +00:00
Mike Stump
0674f4b44b Update to latest versions of config.guess and config.sub from
http://savannah.gnu.org/projects/config


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82229 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-18 17:10:27 +00:00
Eric Christopher
030e5a0438 Enable the jit for llvm-config.
Patch by Xerxes Rånby!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81768 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-14 16:38:49 +00:00
Torok Edwin
6493798d83 install-sh chmods to 0755 by default, and this causes 'git diff' to show
that all the Makefiles changed mode.
Fix this by tellint install-sh to chmod
only to 0644, these are not executable files after all!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80371 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28 16:12:48 +00:00
Gabor Greif
4c75054b01 re-apply r80197, now that iterator.h is not mentioned any more
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80254 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-27 17:07:35 +00:00
Bill Wendling
fffb7266fe --- Reverse-merging r80147 into '.':
A    include/llvm/ADT/iterator.cmake
U    autoconf/configure.ac
--- Reverse-merging r80161 into '.':
U    cmake/config-ix.cmake
--- Reverse-merging r80171 into '.':
U    Makefile
--- Reverse-merging r80173 into '.':
U    configure
U    include/llvm/Config/config.h.in
--- Reverse-merging r80180 into '.':
A    include/llvm/ADT/iterator.h.in

Despite common miscomceptions, iterator.h is alive and well. It broke the build
bots for several hours. And yet no one bothered to look at them.

Gabor and Doug, please review your changes and make sure that they actually
build before resubmitting them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80197 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-27 03:29:26 +00:00
Gabor Greif
a626e16b38 nobody includes llvm/ADT/iterator.h any more,
so get rid of this monstrosity. iterator.h.in is scheduled for deletion in my working copy,
but I wait till I see that configure gets regenerated, as it depends on it. I'll commit
then.
There are still some AC_* tests in the configure.ac dealing with iterators, those can
be zapped probably too.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80147 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-26 21:36:59 +00:00
Gabor Greif
2f3fa88a25 revert r78628 and r78803 as these are not needed any more
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80048 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-25 23:02:21 +00:00
Daniel Dunbar
87cbef0df0 Remove alloca config.h support.
- I did not actually remove the configure test itself, someone who can
   regenerate configure should do this (see FIXME in autoconf/configure.ac)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79881 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-24 02:14:39 +00:00
Tanya Lattner
86d6350ad5 Update copyright date.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79771 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-22 21:00:33 +00:00
Tanya Lattner
ed91bc41a7 TOT is now 2.7svn
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79725 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-22 04:33:54 +00:00
Anton Korobeynikov
e55db74152 The attached patches attempt to fix cross builds. For example, if you
try to use i686-darwin to build for arm-eabi, you'll quickly run into
several false assumptions that the target OS must be the same as the
host OS. These patches split $(OS) into $(HOST_OS) and $(TARGET_OS) to
help builds like "make check" and the test-suite able to cross
compile. Along the way a target of *-unknown-eabi is defined as
"Freestanding" so that TARGET_OS checks have something to work with.

Patch by Sandeep Patel!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79296 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-18 00:40:33 +00:00
Misha Brukman
2cf89b61b0 * Moved all tool version requirements to the same place
* Cleaned up multiple uses of literal version numbers and simplified 'cleaning'


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78932 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-13 20:29:30 +00:00
Misha Brukman
9d63530e5a Converted tabs to spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78931 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-13 20:12:48 +00:00
Gabor Greif
10971d815c Lay the groundwork for my upcoming ilist sentinel shrinking patch
by defining a LLVM_COMPACT_SENTINELS symbol to 0 or 1 in config.h.

I'm asking for 3 favors:
- may an autofoo expert look at this and suggest improvements?
- may a cmake expert suggest analogous functionality for config.h?
- may somebody with the right autofoo mix regenerate configure? (mine is too new)

Thanks!
--This line, and those below, will be ignored--

M    configure.ac


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78628 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-11 00:59:39 +00:00
Jakob Stoklund Olesen
73b7bb7b07 Build Blackfin target with autoconf and cmake.
Note that configure was edited by hand. Will somebody with the correct version of autoconf please regenerate?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77898 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-02 17:32:37 +00:00
Dan Gohman
d2cb3d2c32 Remove the IA-64 backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76920 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-24 00:30:09 +00:00
Daniel Dunbar
8413b225a6 Fix typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76235 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-17 20:56:18 +00:00
Daniel Dunbar
092a9dda2d Sketch support for target specific assembly parser.
- Not fully enabled yet, need a configure regeneration.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76230 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-17 20:42:00 +00:00
Anton Korobeynikov
4403b930f8 Let's start another backend :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75909 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-16 13:27:25 +00:00
Dan Gohman
6bfead3179 LLVM doesn't use libelf. Remove libelf configurey.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75643 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-14 18:06:25 +00:00
Jeffrey Yasskin
8f6d9a729e Add a --with-oprofile flag to configure, which uses OProfile's agent
library to tell it the addresses of JITted functions.  For a
particular program, this changes the opreport -l output from:

samples %    image name        symbol name
48182  98.9729 anon (tgid:19412 range:0x7f12ccaab000-0x7f12cdaab000) anon (tgid:19412 range:0x7f12ccaab000-0x7f12cdaab000)
11     0.0226  libstdc++.so.6.0.9    /usr/lib/libstdc++.so.6.0.9

to:

samples %    image name        symbol name
24565  60.7308 19814.jo        fib_left
15365  37.9861 19814.jo        fib_right
22     0.0544  ld-2.7.so       do_lookup_x



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75279 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-10 21:08:20 +00:00
David Greene
00ad26ff57 Add support for other GraphViz display tools. This can help
with very large graphs, where dot isn't necessarily the 
most visually pleasing way of looking at the graph.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75144 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-09 17:06:18 +00:00
Mikhail Glushenkov
cc4f8bcedc LLVMC can be now compiled w/o dynamic plugin support.
Controlled via the --enable-llvmc-dynamic-plugins option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74784 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-04 03:55:25 +00:00
Mikhail Glushenkov
86a3510a68 LLVMC doesn't need ENABLE_PIC to build now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74783 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-04 03:54:54 +00:00
Mikhail Glushenkov
2373c99433 Add --enable-llvmc-dynamic configure option.
Controls whether libCompilerDriver should be loaded dynamically. By default this
is needed only on Win32, to make dynamic plugins work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74759 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-03 03:52:47 +00:00
Mikhail Glushenkov
895f32c212 Trailing whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74758 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-03 03:52:07 +00:00
Jeffrey Yasskin
ed1c0ffe0b Add a portable strerror*() wrapper, llvm::sys::StrError(). This includes the
Windows variant, strerror_s, but I couldn't test that.

I'll update configure and config.h.in in a subsequent patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74621 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-01 18:11:20 +00:00
Owen Anderson
27fcfe1364 Add a configure test for pthread_getspecific, and use it when building ThreadLocal.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74222 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25 23:10:26 +00:00
Douglas Gregor
bcba7f95c2 Work around build problem with OpenJDK, which defines X86 as a
macro. Fixes PR 4427. Patch by Xerxes Rånby!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73961 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23 17:21:35 +00:00
Douglas Gregor
76166fc7f2 Define LLVM_NATIVE_ARCH in llvm/Config/config.h to be the LLVM back end that corresponds to the native executable, but only when that LLVM back end is being built
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73590 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-17 00:42:33 +00:00
Owen Anderson
9a3df671ab Add an atomic increment and decrement implementation, which will be used for
thread-safe reference counting.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73587 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-17 00:13:00 +00:00
Douglas Gregor
1555a23335 Introduce new headers whose inclusion forces linking and
initialization of all targets (InitializeAllTargets.h) or assembler
printers (InitializeAllAsmPrinters.h). This is a step toward the
elimination of relinked object files, so that we can build normal
archives.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73543 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 20:12:29 +00:00
Owen Anderson
de8aed2808 Add a configure check for pthread_rwlock_init.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73523 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 18:20:20 +00:00
Nick Lewycky
84bd075a07 Add a flag to permit disabling libffi.
Also, there were a bunch of flags with no text in --help because the square
brackets were in the wrong place. I've fixed those too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72989 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-06 06:24:44 +00:00
Owen Anderson
a86037084d Split the ENABLE_THREADS #define in two. Now ENABLE_THREADS indicates the ability to run multiple threads at once in the JIT, and requires only
mutex support.  LLVM_MULTITHREADED indicates (or will indicate) the ability to run LLVM itself across multiple threads, and requires atomics support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72140 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-19 22:18:56 +00:00
Owen Anderson
d4b272bcf4 Test for the presence of GCC atomic builtins at configure time. If not found,
disable building LLVM in thread-safe mode and print a nice warning.

Regenerate configure for these changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72075 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-18 23:58:51 +00:00
Douglas Gregor
071d73d67e termios.h contains the winsize structure we need to determine the
width of a terminal. Don't try to get the width of a terminal if we
don't have this header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72018 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-18 17:21:34 +00:00
Duncan Sands
e4eb2d2b57 Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71656 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-13 13:13:18 +00:00
Douglas Gregor
01746745f1 Add terminal width detection to llvm::sys::Process. This is needed to
fix Clang PRs 4148 and 4183.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71448 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-11 18:05:52 +00:00
Anton Korobeynikov
f2c3e179ec Dummy MSP430 backend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70694 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-03 12:57:15 +00:00
Mikhail Glushenkov
4558f481b8 Support --with-llvmgccdir and friends in llvmc, take 2.
Should now work when building with objdir != srcdir and when llvm-gcc is not
available.

Thanks to Duncan Sands for testing and advice!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69700 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-21 19:46:10 +00:00
Bill Wendling
5a22d6a6a0 Revert 69474 and 69475. They are causing failures during a bootstrap on Darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69478 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 21:45:27 +00:00
Mikhail Glushenkov
7ba8ad31df Add a configure check for llvm-gcc (reapply).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69474 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 20:55:28 +00:00
Nick Lewycky
fa8ffc10b3 Generalize to support more ARM types.
Configure was not actually regenerated, but the change last time only touched
this one line, so I'm being lazy and cheating by fixing it manually.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69453 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 18:11:26 +00:00
Nick Lewycky
1d6a8ce0a5 Detect beagleboard as ARM. The $target is "armv7l".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69446 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 15:34:25 +00:00
Bill Wendling
ebcceeeaba Temporarily revert r69438 and r69439. These were causing failures during a
release build of llvm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69440 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 11:20:33 +00:00
Mikhail Glushenkov
126b014c60 Add a configure check for llvm-gcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69438 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 09:57:58 +00:00
David Greene
dbefd0c15b Add a --enable-profiling option to configure to build Debug+Profile and
Opt+Profile tools.  Now we can profile any kind of flavor we build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69351 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-17 14:49:22 +00:00
Nick Lewycky
93f70fc291 Link against libffi if available, fall back to "no external calls from
interpreter mode" when it's not.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68937 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-13 04:26:06 +00:00
Nick Lewycky
d04bc73085 Detect that we're building from a git checkout like we do for cvs and svn.
Based on a patch by Nicolas Trangez on the unladen-swallow mailing list!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68187 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01 04:39:25 +00:00
Bill Wendling
a0833356fe Revert r66765 and r66766. These were causing build failures on Darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66770 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-12 04:10:09 +00:00
Nick Lewycky
8bc080358f Set ARCH to x86 on mixed 32/64-bit Linux systems.
Remove the explicit if OS = Darwin test around the setting of -m32/-m64.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66765 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-12 03:34:19 +00:00
Nick Lewycky
59fad7d933 Remove configurey-fu to autodetect hash_map and hash_set now that they are
no longer used in LLVM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66406 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-09 06:16:26 +00:00
Nick Lewycky
18f99072a6 Autodetect the availability of -export-dynamic in the linker.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66156 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05 08:20:21 +00:00
Nick Lewycky
1dace48f53 Switch to using -Wl,-R on Solaris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65927 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-03 04:55:15 +00:00
Chris Lattner
065d7a61e2 Search for the export map in a place that it can be found.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65552 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-26 18:37:59 +00:00
Nick Lewycky
5992175b0f Remove tests for flex/bison which are no longer needed by LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65249 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-21 22:36:26 +00:00
Nick Lewycky
7e66462d9d Default to building with position independent code. This may increase LLVM's
run time but will make LLVM easier to use as a library.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65019 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-19 06:18:24 +00:00
Nick Lewycky
f9c5c5c7a2 Reapply patch from r62553, with a fix to avoid looking for an ffi.h that isn't
there.

This changes the interpreter to use libffi. After this patch, the interpreter
will barely be able to call any external functions if built on a system without
libffi installed (just enough to pass 'make check' really). But with libffi,
we can now call any function that isn't variadic or taking a struct or vector
parameter (but pointer to struct is fine). Patch by Alexei Svitkine!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63723 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-04 06:26:47 +00:00
Nick Lewycky
e2be5d5fd8 Add the ability to pass the path to binutils source to configure. This is
needed to build the LLVM gold plugin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63621 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-03 07:10:08 +00:00
Tanya Lattner
32aaee684d Revert r62553 and r62616 due to issues with portability.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62777 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-22 20:09:20 +00:00
Tanya Lattner
f9eb2d8aef Bump to 2.6svn.
Regenerate configure (last regen was with the wrong version).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62751 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-22 05:17:59 +00:00
Nick Lewycky
f514e2d28f Make the Interpreter use libffi if it's available. Patch from Alexei Svitkine!
This requires a rebuild of 'configure' itself. I will be committing that next, but
built with the wrong version of autoconf. Somebody who has the right one, please update
it.

As a side-note, because of the way autoconf works, all built tools will link against
libffi, not just lli. If you know how to fix this, please let me know ...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62553 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-20 00:51:40 +00:00
Bill Wendling
4113bd1dc6 Modify the unittests Makefiles so that they don't rebuild parts of LLVM just to
run the tests. Most of this was stolen from the llvm/test Makefiles.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61648 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-04 23:12:21 +00:00
Scott Michel
ee85bbcae1 Revert accidental last patch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59704 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-20 04:28:08 +00:00
Scott Michel
a0e5769166 CellSPU: Adjust spacing/tabulation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59703 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-20 04:26:21 +00:00
Richard Osborne
b25baef26f Add XCore backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58838 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-07 10:59:00 +00:00
Gordon Henriksen
0f392e1a9e [PR2886] Don't look for ocaml's .opt executables; something in the autoconf/test machinery doesn't handle the period properly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57974 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-22 12:40:40 +00:00
Torok Edwin
237033e6ac Fix make check on Solaris 10/x86: the default grep is not GNU grep, same for as.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57912 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-21 17:21:32 +00:00
Tanya Lattner
f85e74cc87 Fix configure issue where configure
turned "obj-c++" into "obj" in the langs line.
Update configure script.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57267 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-07 22:21:03 +00:00
Tanya Lattner
d53b4d350f Advance version to 2.5
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57233 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-07 04:35:08 +00:00
Jim Grosbach
673612ec72 Add support for Canadian Cross builds where the host executables are not
runnable on the build machine.

There are a few bits that need built for the build environment (TableGen).
This patch builds those bits, and the associated libraries, for the build
environment as well as the (usual) host environment.

Thanks to Eric C. and Devang P. for pre-commit review.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56975 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 22:56:44 +00:00
Jim Grosbach
0eecd899ea When looking for executable extensions, ignore .dSYM, as that's the debug info directory on Darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56667 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 17:27:58 +00:00
Daniel Dunbar
ecfe67c217 Reapply majority of r55557 but with the changes to compilation flags
disabled until issues with gcc 4.1 on linux 32-bit are resolved.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55636 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-02 17:35:16 +00:00
Matthijs Kooijman
0783f0d0a3 Revert r55557, it is causing linking failures on 32bit linux.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55628 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-02 09:51:00 +00:00
Daniel Dunbar
dcf114e861 Enable -fvisibility-inlines-hidden by default for compilers which
support it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55557 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-30 01:16:19 +00:00
Duncan Sands
c73738b3ec Set the executable bit - means it can actually
be run when installing on sparc sun.  Set the
mime type to text/x-sh while there.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54165 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-29 18:31:42 +00:00
Matthijs Kooijman
f512281d61 Make LLVM compile on DragonFly BSD (PR2499).
Patch by Hasso Tepper!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52781 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-26 10:36:58 +00:00
Matthijs Kooijman
5b80c663e7 Allow the test suite to be checked out into projects/test-suite.
We will keep the old projects/llvm-test working for existing installs.

The changes to configure are made manually, since I lack autoconf-2.6. Someone
might want to run AutoGen.sh to see if that changes anything.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52675 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-24 13:01:57 +00:00
Anton Korobeynikov
43d1fd449f For PR1338: rename include/llvm/ADT/ilist and friends to end with ".h"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51687 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-29 17:41:17 +00:00
Sanjiv Gupta
e3f342880b Added configure switches for PIC16 in configure.ac.
Regenerated configure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51096 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-14 08:03:23 +00:00
Tanya Lattner
49ff661410 Set to 2.4 and regenerate configure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50935 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-10 04:20:38 +00:00
Anton Korobeynikov
5027652b8a First step of implementing PR1538: move llvm2cpp logic to new 'target'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50189 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-23 22:29:24 +00:00
Gordon Henriksen
b047766963 Adding ocamldoc generation.
Patch by Erick Tryzelaar.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48147 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10 15:49:16 +00:00
Gordon Henriksen
0ed86fe043 Prefer to use ocamlc.opt to ocamlc and soforth.
These natively compiled versions are faster.

Patch by Erick Tryzelaar!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48007 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-07 18:19:47 +00:00