Commit Graph

503 Commits

Author SHA1 Message Date
Nick Lewycky f653c2e18e Revert r66315. Fix the build on mixed 64/32 Linux systems.
llvm-svn: 66350
2009-03-07 22:17:05 +00:00
Evan Cheng 9153f08c74 If ARCH is x86_64, pass -m64 to the host compiler. -m32 for i386. This makes sure the JIT work correctly.
llvm-svn: 66315
2009-03-07 01:40:17 +00:00
Daniel Dunbar 3b3c3f02cc Rename my makefile debugging rule to prevent accidental collisions.
llvm-svn: 66294
2009-03-06 22:23:25 +00:00
Mikhail Glushenkov ab6f8ded33 LINK_COMPONENTS should be added to LLVMLibsOptions.
From the code: "There are "Proj" libs (defined by the user's project) and "LLVM"
libs (defined by the LLVM project)." LINK_COMPONENTS are clearly defined by the
LLVM project.

Additionally, this fixes an issue with llvmc's build process:-)

llvm-svn: 65940
2009-03-03 10:03:27 +00:00
Nick Lewycky 7d01e394ba Switch to using -Wl,-R on Solaris.
llvm-svn: 65927
2009-03-03 04:55:15 +00:00
Nick Lewycky 9c51e8f962 Fix build on Cygwin.
llvm-svn: 65922
2009-03-03 03:36:50 +00:00
Mikhail Glushenkov c6333bdc50 Remove duplication in Makefile.rules.
Merge common bits from the LLVMC and TABLEGEN sections.

llvm-svn: 65834
2009-03-02 09:42:59 +00:00
Mikhail Glushenkov 7cff81825f Move the rules for building plugins to Makefile.rules.
llvm-svn: 65827
2009-03-02 09:04:13 +00:00
Chris Lattner 659ed19150 Fix universal builds to not use -XCClinker (a libtool thing) now that
libtool doesn't exist.

llvm-svn: 65561
2009-02-26 19:08:30 +00:00
Chris Lattner 75f9c4e4a1 no really, use the right path.
llvm-svn: 65554
2009-02-26 18:38:40 +00:00
Chris Lattner 8f9c4e67bb Search for the export map in a place that it can be found.
llvm-svn: 65552
2009-02-26 18:37:59 +00:00
Chris Lattner 0f19580996 strip exported symbols from tools that build with TOOL_NO_EXPORTS=1.
llvm-svn: 65543
2009-02-26 17:47:49 +00:00
Chris Lattner c1504647ee pass -mmacosx-version-min to the compiler and linker, which makes the build
substantially happier on some versions of Mac OS/X.

llvm-svn: 65542
2009-02-26 17:44:38 +00:00
Nick Lewycky b51813fc1c Fix typo.
llvm-svn: 65521
2009-02-26 08:48:14 +00:00
Nick Lewycky a0b8aaaad4 Fix typo!
llvm-svn: 65520
2009-02-26 08:03:36 +00:00
Nick Lewycky 28c62d211a Remove libtool.
llvm-svn: 65517
2009-02-26 07:44:16 +00:00
Daniel Dunbar 0094e341d0 Add makefile debugging target; use "make print-FOO" to print the
value/definition/origin of FOO.

llvm-svn: 65245
2009-02-21 20:42:39 +00:00
Nick Lewycky 9e5ed6d329 Pass different flags on different platforms when building PIC.
llvm-svn: 65229
2009-02-21 08:41:09 +00:00
Mike Stump 35f423e09e Avoid order files for now, as they aren't supported in 3.79.
llvm-svn: 64412
2009-02-12 23:45:11 +00:00
Dale Johannesen b842d529a3 Reapply 63765. Patches for clang and llvm-gcc to follow.
llvm-svn: 63812
2009-02-05 01:49:45 +00:00
Dale Johannesen ae616c2c61 Reverting 63765. This broke the build of both clang
and llvm-gcc.

llvm-svn: 63786
2009-02-04 22:47:25 +00:00
Nate Begeman 6ae3aa83d0 New feature: add support for target intrinsics being defined in the
target directories themselves.  This also means that VMCore no longer
needs to know about every target's list of intrinsics.  Future work
will include converting the PowerPC target to this interface as an
example implementation.

llvm-svn: 63765
2009-02-04 19:47:21 +00:00
Mike Stump 82221d62a9 Perform optional clang building.
llvm-svn: 62895
2009-01-24 00:00:41 +00:00
Mike Stump f7a16e9380 Don't create .dir files in installation directories. Switch to using
order-only dependancies for installation directories.

llvm-svn: 62746
2009-01-22 03:24:22 +00:00
Mikhail Glushenkov 726440dbc9 Support llvmc plugins in out-of-tree projects.
llvm-svn: 61990
2009-01-09 16:31:01 +00:00
Misha Brukman 2879c29274 Removed trailing whitespace.
llvm-svn: 61904
2009-01-08 02:11:55 +00:00
Bill Wendling 8790e3260d 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.

llvm-svn: 61648
2009-01-04 23:12:21 +00:00
Bill Wendling b2f724edb4 Revert r61598 as it does nothing.
llvm-svn: 61614
2009-01-03 22:46:50 +00:00
Bill Wendling cea11dbf6e Make sure that 'ranlib' runs only after 'ar' is completed.
llvm-svn: 61598
2009-01-03 01:11:39 +00:00
Chris Lattner 814d9eec97 Remove lex/bison support from makefile.rules.
llvm-svn: 61562
2009-01-02 07:16:45 +00:00
Bill Wendling ea58ff5a8a Don't error out if ranlib fails.
llvm-svn: 61551
2009-01-02 02:53:24 +00:00
Duncan Sands 445071c44f Fix PR3117: not all nodes being legalized. The
essential problem was that the DAG can contain
random unused nodes which were never analyzed.
When remapping a value of a node being processed,
such a node may become used and need to be analyzed;
however due to operands being transformed during
analysis the node may morph into a different one.
Users of the morphing node need to be updated, and
this wasn't happening.  While there I added a bunch
of documentation and sanity checks, so I (or some
other poor soul) won't have to scratch their head
over this stuff so long trying to remember how it
was all supposed to work next time some obscure
problem pops up!  The extra sanity checking exposed
a few places where invariants weren't being preserved,
so those are fixed too.  Since some of the sanity
checking is expensive, I added a flag to turn it
on.  It is also turned on when building with
ENABLE_EXPENSIVE_CHECKS=1.

llvm-svn: 60797
2008-12-09 21:33:20 +00:00
Evan Cheng 977e7be9d4 Move target independent td files from lib/Target/ to include/llvm/Target so they can be distributed along with the header files.
llvm-svn: 59953
2008-11-24 07:34:46 +00:00
Anton Korobeynikov 8e58c52b37 Proper way of doing llvm canadian-cross compilation.
Patch by Jim Grosbach!

llvm-svn: 58981
2008-11-10 07:33:13 +00:00
Daniel Dunbar d395a1722d Comment fix.
llvm-svn: 58621
2008-11-03 17:33:36 +00:00
Dan Gohman ca0546facc Fun x86 encoding tricks: when adding an immediate value of 128,
use a SUB instruction instead of an ADD, because -128 can be
encoded in an 8-bit signed immediate field, while +128 can't be.
This avoids the need for a 32-bit immediate field in this case.

A similar optimization applies to 64-bit adds with 0x80000000,
with the 32-bit signed immediate field.

To support this, teach tablegen how to handle 64-bit constants.

llvm-svn: 57663
2008-10-17 01:33:43 +00:00
Daniel Dunbar 4b928f6550 Another dependency fix, prevent ObjDir from having trailing slash.
- It turns out this is enough to completely break dependency file
   (.d) usage (at least for my gmake).

llvm-svn: 57030
2008-10-03 21:24:52 +00:00
Daniel Dunbar 78caa02ef4 Add IS_CLEANING_TARGET Makefile variable.
- Fixes bug in dependency inclusions where make with unspecified
   target wouldn't include dependency files, eek!

llvm-svn: 57026
2008-10-03 19:11:19 +00:00
Jim Grosbach 009db89513 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.

llvm-svn: 56975
2008-10-02 22:56:44 +00:00
Daniel Dunbar 61e0a821cc Reapply majority of r55557 but with the changes to compilation flags
disabled until issues with gcc 4.1 on linux 32-bit are resolved.

llvm-svn: 55636
2008-09-02 17:35:16 +00:00
Matthijs Kooijman 7b704a502b Revert r55557, it is causing linking failures on 32bit linux.
llvm-svn: 55628
2008-09-02 09:51:00 +00:00
Daniel Dunbar 8eec985ac7 Enable -fvisibility-inlines-hidden by default for compilers which
support it.

llvm-svn: 55557
2008-08-30 01:16:19 +00:00
Gabor Greif 2dd54ed593 fix the output dumbness I have introduced some time ago
llvm-svn: 55506
2008-08-28 22:32:39 +00:00
Dan Gohman b2226e21c3 Initial checkin of the new "fast" instruction selection support. See
the comments in FastISelEmitter.cpp for details on what this is.
This is currently experimental and unusable.

llvm-svn: 54751
2008-08-13 20:19:35 +00:00
Chris Lattner 01602a18a9 Add support for building on solaris, working around namespace
polution problems from system headers.  Patch by Nathan Keynes!

llvm-svn: 52682
2008-06-24 17:44:42 +00:00
Evan Cheng c7007a7211 Warn of potential violations of strict aliasing rules.
llvm-svn: 52027
2008-06-05 23:00:08 +00:00
Evan Cheng 215c528565 Revert 51775.
llvm-svn: 51795
2008-05-30 22:47:19 +00:00
Evan Cheng a50833b695 Patches for building llvm on Solaris x86. Contributed by Nathan Keynes.
llvm-svn: 51775
2008-05-30 17:16:20 +00:00
Gabor Greif 697e94cc22 Fix a bunch of 80col violations that arose from the Create API change. Tweak makefile targets to find these better.
llvm-svn: 51143
2008-05-15 10:04:30 +00:00
Gordon Henriksen 04e38cf30a Refresh Makefile.ocaml in objdir if it is modified in srcdir.
Patch by Erick Tryzelaar!

llvm-svn: 48149
2008-03-10 15:58:40 +00:00