1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-01 16:33:37 +01:00
Commit Graph

588 Commits

Author SHA1 Message Date
Jeffrey Yasskin
e4b750f830 Roll back the shared library, r96559. It broke two darwins and arm, mysteriously.
llvm-svn: 96569
2010-02-18 04:43:02 +00:00
Jeffrey Yasskin
64b33dd9b7 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.

llvm-svn: 96559
2010-02-18 02:36:02 +00:00
Sean Callanan
59ba2433b0 Added a custom TableGen backend to support the
enhanced disassembler, and the necessary makefile
rules to build the table for X86.

llvm-svn: 94764
2010-01-29 00:21:04 +00:00
Chris Lattner
5a57121631 make -fno-rtti the default unless a directory builds with REQUIRES_RTTI.
llvm-svn: 94378
2010-01-24 20:43:08 +00:00
Chris Lattner
e753847267 libs that need EH need RTTI.
llvm-svn: 94376
2010-01-24 20:21:50 +00:00
Chris Lattner
c0335bacb4 ENABLE_EXPENSIVE_CHECKS shouldn't know how rtti is enabled, let REQUIRES_RTTI handle it.
llvm-svn: 94375
2010-01-24 20:20:40 +00:00
Daniel Dunbar
55769c8aff make: Make .o files depend on Makefile, at least for now.
llvm-svn: 94184
2010-01-22 18:10:54 +00:00
Anton Korobeynikov
aa77d8f532 Provide magic define on mingw to not generate inline variants of ctyper functions.
Otherwise we'll end with random cyclic deps between libraries due to this.
Proposed by Gianluigi Tiesi!

llvm-svn: 93635
2010-01-16 14:06:58 +00:00
Daniel Dunbar
7f52922e77 Add the rest of the build system logic for optional target disassemblers
llvm-svn: 89841
2009-11-25 04:46:58 +00:00
Daniel Dunbar
6e84701653 Add TOOLALIAS makefile variable; this defines an alternate name for a program
which the makefiles will create by symlinking the actual tool to.
 - For use by clang, where we want to make 'clang++' and alias for clang (which
   enables C++ support in the driver)

 - Not sure this is the best approach, alternative suggestions welcome!

llvm-svn: 89282
2009-11-19 00:14:53 +00:00
Daniel Dunbar
3a89c01296 Add "Unoptimized" build (NO_DEBUG_SYMBOLS=1 ENABLE_OPTIMIZED=1), for reducing
disk space, and increasing battery lifetime. :)

llvm-svn: 88978
2009-11-16 22:37:52 +00:00
Daniel Dunbar
b19cc0fa91 configure: Add --with-optimize-option, for setting the default value of
OPTIMIZE_OPTION.

llvm-svn: 86005
2009-11-04 04:32:50 +00:00
Jim Grosbach
88539d92a3 Build in ARM mode explicitly when on ARM Darwin
llvm-svn: 85615
2009-10-30 21:33:05 +00:00
Nick Lewycky
242c20ffde Indent.
llvm-svn: 85034
2009-10-25 03:22:00 +00:00
Jakob Stoklund Olesen
528ceba13f Tablegen target intrinsics from the target main .td file.
Fix pasto.

llvm-svn: 84190
2009-10-15 18:48:47 +00:00
Edward O'Callaghan
e874332be9 AuroraUX needs special Solaris system header.
llvm-svn: 84076
2009-10-14 05:55:03 +00:00
Mikhail Glushenkov
59c2ae922b Raise the limit on built-in plugins in llvmc to 10.
llvm-svn: 83614
2009-10-09 04:15:52 +00:00
Jakob Stoklund Olesen
2c7d981a62 Remove trailing whitespace from build output.
llvm-svn: 83284
2009-10-04 17:54:36 +00:00
Jeffrey Yasskin
195b24c844 Enable -g with DEBUG_SYMBOLS and --enable-debug-symbols instead of
DEBUG_RUNTIME.

llvm-svn: 82906
2009-09-27 17:47:29 +00:00
Jeffrey Yasskin
4321237b78 This patch causes the --enable-debug-runtime configure flag and the
DEBUG_RUNTIME Makefile variable to pass -g to gcc when building LLVM's objects.
Without this, it's very hard to debug crashes that happen in Release-Asserts
mode but not Debug mode.

llvm-svn: 82775
2009-09-25 16:46:09 +00:00
Daniel Dunbar
4364c48cdb Add 'make check-all', which runs the LLVM tests along with the clang tests if
its in the standard location.

llvm-svn: 82374
2009-09-20 06:17:21 +00:00
Daniel Dunbar
49c00ccc78 Build (not test) the unittests as part of a normal build.
- 'make unittests' still builds and tests.
 - 'make unitcheck' inside a unittest directory runs the tests in that directory.

llvm-svn: 81725
2009-09-13 22:39:27 +00:00
Daniel Dunbar
f78cd25928 Revert unittests build changes temporarily, the unit test build isn't -j safe.
llvm-svn: 81692
2009-09-13 18:58:14 +00:00
Daniel Dunbar
9eba9d4828 Build (not test) the unittests as part of a normal build.
- 'make unittests' still builds and tests.
 - 'make unitcheck' inside a unittest directory runs the tests in that directory.

llvm-svn: 81687
2009-09-13 18:43:46 +00:00
Daniel Dunbar
f54dbed77f ... and fix the REQUIRES_RTTI condition.
llvm-svn: 81524
2009-09-11 15:47:24 +00:00
Daniel Dunbar
76590ff496 Fix REQUIRES_RTTI while awake.
llvm-svn: 81523
2009-09-11 15:45:13 +00:00
Daniel Dunbar
340934be39 Make REQUIRES_RTTI work.
llvm-svn: 81522
2009-09-11 15:39:39 +00:00
Evan Cheng
3a839afc42 Do not specify -mmacosx-version-min if building for arm-apple-darwin.
llvm-svn: 81240
2009-09-08 18:52:20 +00:00
Dan Gohman
ac3bbe614d llvm-as is no longer needed here, now that opt can read assembly
files directly.

llvm-svn: 81222
2009-09-08 15:52:56 +00:00
Daniel Dunbar
1d03c5c8a7 Add 'lit' support for llvm tests.
- This adds 'make check-lit' from the top-level Makefile.

llvm-svn: 81191
2009-09-08 05:31:44 +00:00
Dan Gohman
7591ad5a87 Remove some unnecessary -f options.
llvm-svn: 80924
2009-09-03 16:11:53 +00:00
Daniel Dunbar
28838cdd68 Filter out -fno-rtti from CXXFLAGS as well (in an expensive checks build).
llvm-svn: 80910
2009-09-03 08:41:19 +00:00
Daniel Dunbar
09b42dc6f8 Fix creation of .bca libraries with EXPORTED_SYMBOLS_LIST, this was putting the
llvm-ld shell wrapper script in the archive, not the relinked object!

Also, rename the temp file to avoid conflicts.

llvm-svn: 80373
2009-08-28 16:14:46 +00:00
Nicolas Geoffray
1d60edcf53 Add a REQUIRES_FRAME_POINTER option to disable the frame pointer
elimination optimization on the LLVM code base.

llvm-svn: 79477
2009-08-19 22:04:44 +00:00
Eric Christopher
80e419f6f0 Add CXXFLAGS to the Link lines as well in case someone used those instead
of LDFLAGS.

llvm-svn: 79352
2009-08-18 18:07:35 +00:00
Eric Christopher
51b2b8b7e6 Separate out Makefile defines so that we can keep the llvm
defined ones from the user defined ones. Propagate accordingly.

llvm-svn: 79308
2009-08-18 03:23:40 +00:00
Anton Korobeynikov
c9d9a008b5 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!

llvm-svn: 79296
2009-08-18 00:40:33 +00:00
Misha Brukman
399ebe7f48 Fixed indentation and spelling.
llvm-svn: 79245
2009-08-17 15:31:24 +00:00
Anton Korobeynikov
ed8a110c2e Force reconfigure
llvm-svn: 79019
2009-08-14 18:53:19 +00:00
Daniel Dunbar
b92d082b59 Add temporary hack to teach LLVM to reconfigure itself to pick up the new PIC16
AsmPrinter (in AsmPrinters.def).

llvm-svn: 78922
2009-08-13 17:22:49 +00:00
Anton Korobeynikov
7e6893e772 Add executable suffix for the tool. This is needed e.g. for 'make install' on mingw32.
llvm-svn: 78185
2009-08-05 09:37:43 +00:00
Daniel Dunbar
d86bb86bd3 Makefile rules for generating assembly matcher.
- Unused, fear not cmakers.

llvm-svn: 75483
2009-07-13 18:35:35 +00:00
Mikhail Glushenkov
46d25fa06e 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.

llvm-svn: 74759
2009-07-03 03:52:47 +00:00
Mikhail Glushenkov
c513ce52e6 Make dynamic LLVMC plugins work on Windows (finally!).
Implemented by making lib/CompilerDriver a shared library that holds all the
global static data (CommandLine options, plugin registry) that we unfortunately
have to live with.

llvm-svn: 74417
2009-06-29 03:09:15 +00:00
Mikhail Glushenkov
112972509a Remove duplication.
Factor out common preprocessor-related bits to Makefile.rules.

llvm-svn: 74153
2009-06-25 01:07:00 +00:00
Mikhail Glushenkov
f7b3bf53e2 Make llvmc work again.
Chris recently broke llvmc with his Makefile changes (r75379). That patch made
the global change .o -> .a, which caused built-in llvmc plugins to stop working
since plugin initialization in llvmc is based on static variables not referenced
from the main executable. This patch implements auto-generated forced references
to the plugin libraries.

llvm-svn: 74000
2009-06-23 20:46:48 +00:00
Duncan Sands
229706d87f Since -Wno-long-long is ignored without -pedantic,
place it with -pedantic.  Remove -Wunused since it
is implied by -Wall.  Group -Wno-unused-parameter
with -Wall -W since it is the combination of these
two that turns on -Wunused-parameter.

llvm-svn: 73765
2009-06-19 12:40:30 +00:00
Chris Lattner
3c85f09f57 Remove support for building LLVM libraries into "relinked"
object files.  Now we always build LLVM libraries into archives (.a files).

This makes the 'make' build work more like the cmake build, among other
things.  Doing this exposed some latent circular library dependencies, so
I think that llvm-config wasn't quite right for .o files anyway.

llvm-svn: 73579
2009-06-16 23:00:42 +00:00
Duncan Sands
738959fea3 On platforms like Sparc64 you need to pass -r to
gcc rather than directly to the linker: gcc will
then modify the linker options it generates (it
will not use --relax for example, incompatible
with -r, as it otherwise would).  This fixes the
sparc build.

llvm-svn: 72943
2009-06-05 15:05:19 +00:00
Torok Edwin
1eb7bb1f05 For the new ar --plugin libLLVMgold.so to work we need libLTO linked with
pthreads, otherwise ar complains of unresolved references to pthread_mutex_*.
LTO doesn't actually use pthreads, but ManagedStatic does.

Fix this by linking in LIBS (that contains pthreads) for LTO and gold.
For now this links in more libs than needed (libffi for example), we can figure
out later how to link in those libs per-tool later.

llvm-svn: 72430
2009-05-26 19:11:47 +00:00