Chris Lattner [Tue, 15 Sep 2009 02:25:21 +0000 (02:25 +0000)]
merge some more cmov tests into cmov.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81823
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Sep 2009 02:22:47 +0000 (02:22 +0000)]
merge two cmov tests into one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81822
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 15 Sep 2009 01:22:01 +0000 (01:22 +0000)]
Don't pull a load through a callseq_start if the load's chain
has multiple uses, as one of the other uses may be on a path
to a different node above the callseq_start, because that
leads to a cyclic graph. This problem is exposed when
-combiner-global-alias-analysis is used. This fixes PR4880.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81821
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 15 Sep 2009 00:38:09 +0000 (00:38 +0000)]
Remove incorrect CSE code from r81813.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81819
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Tue, 15 Sep 2009 00:35:17 +0000 (00:35 +0000)]
Modified the Intel instruction tables to include
versions of CALL and JMP with segmented addresses
provided in-line, as pairs of immediates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81818
91177308-0d34-0410-b5e6-
96231b3b80d8
Kevin Enderby [Tue, 15 Sep 2009 00:27:25 +0000 (00:27 +0000)]
Added the first bits of the ARM target assembler to llvm-mc. For now it only
parses the .word directive as 4 bytes and ARMAsmParser::ParseInstruction will
give an error is called. Broke out the test of the .word directive into two
different test cases, one for x86 and one for arm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81817
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 15 Sep 2009 00:18:30 +0000 (00:18 +0000)]
Substantially speed up combiner-aa in the following ways:
1. Switch from an std::set to a SmallPtrSet for visited chain nodes.
2. Do not force the recursive flattening of token factor nodes, regardless of
use count.
3. Immediately process newly created TokenFactor nodes.
Also, improve combiner-aa by teaching it that loads to non-overlapping offsets
of relatively aligned objects cannot alias.
These changes result in a >5x speedup for combiner-aa on most testcases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81816
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 15 Sep 2009 00:14:28 +0000 (00:14 +0000)]
Teach the legalizer to propagate the original alignment of loads and store when
it splits them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81815
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 15 Sep 2009 00:14:11 +0000 (00:14 +0000)]
On x86-64, the 32-bit cmov doesn't actually clear the high 32-bit of
its result if the condition is false.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81814
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 15 Sep 2009 00:13:12 +0000 (00:13 +0000)]
Add an "original alignment" field to load and store nodes. This enables the
DAG Combiner to disambiguate chains for loads and stores of types which are
broken up by the Legalizer into smaller pieces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81813
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 14 Sep 2009 23:39:10 +0000 (23:39 +0000)]
When extending a memset range past the front, set the alignment of the
memset region to the alignment of the new start address.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81810
91177308-0d34-0410-b5e6-
96231b3b80d8
Erick Tryzelaar [Mon, 14 Sep 2009 21:54:32 +0000 (21:54 +0000)]
Expose initializing the native target for the execution engine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81800
91177308-0d34-0410-b5e6-
96231b3b80d8
Erick Tryzelaar [Mon, 14 Sep 2009 21:54:15 +0000 (21:54 +0000)]
Make sure to initialize the fpm in the ocaml tutorial.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81799
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 14 Sep 2009 21:33:42 +0000 (21:33 +0000)]
Add early coalescing to liveintervals. This is work in progress and is known to miscompute some tests. Read it at your own rish, I have aged 10 year while writing this.
The gist of this is if source of some of the copies that feed into a phi join is defined by the phi join, we'd like to eliminate them. However, if any of the non-identity source overlaps the live interval of the phi join then the coalescer won't be able to coalesce them. The early coalescer's job is to eliminate the identity copies by partially-coalescing the two live intervals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81796
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 14 Sep 2009 20:52:37 +0000 (20:52 +0000)]
Pull the creation of the "RewindFunction" function out of the loop. It's only
created once, so shouldn't be stuck in the middle of the loop. Also early exit
if there are no uses of UnwindInst in the function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81785
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 14 Sep 2009 20:40:10 +0000 (20:40 +0000)]
Update a comment to match the source. PseudoSourceValues are now
obtained via accessor functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81782
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Mon, 14 Sep 2009 17:27:35 +0000 (17:27 +0000)]
trivial whitespace cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81773
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 16:49:26 +0000 (16:49 +0000)]
add PR#
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81770
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Mon, 14 Sep 2009 16:38:49 +0000 (16:38 +0000)]
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
Daniel Dunbar [Mon, 14 Sep 2009 16:10:32 +0000 (16:10 +0000)]
Add a valgrind suppressions file for x86_64/linux/4.3.3.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81766
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 14 Sep 2009 15:27:43 +0000 (15:27 +0000)]
Add a VALGRIND_EXTRA_ARGS makefile variable, with the obvious semantics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81764
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 14 Sep 2009 05:22:54 +0000 (05:22 +0000)]
Update CMake dependencies.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81758
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 14 Sep 2009 05:22:47 +0000 (05:22 +0000)]
Update CMake.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81757
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 03:15:54 +0000 (03:15 +0000)]
PIC16 does allow colon after MBB labels, simplify EmitBasicBlockStart.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81755
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 03:02:37 +0000 (03:02 +0000)]
Change MCAsmStreamer to take an MCInstPrinter instead of a
full AsmPrinter, and change TargetRegistry to keep track
of registered MCInstPrinters.
llvm-mc is still linking in the entire
target foo to get the code emitter stuff, but this is an
important step in the right direction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81754
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 14 Sep 2009 02:39:01 +0000 (02:39 +0000)]
Teach 'make check-lit' to run unittests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81753
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 14 Sep 2009 02:38:53 +0000 (02:38 +0000)]
Attempt to fix some 4.0.0 build warnings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81752
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 14 Sep 2009 02:38:46 +0000 (02:38 +0000)]
lit: Give test formats control over test discovery.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81751
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 14 Sep 2009 02:25:34 +0000 (02:25 +0000)]
Fix a pair of comment typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81750
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 14 Sep 2009 02:25:19 +0000 (02:25 +0000)]
Fifth time's a charm! Remove ourselves as abstract type listeners once we've
been told that the type is no longer abstract.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81749
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 01:49:26 +0000 (01:49 +0000)]
Give MCInstPrinter a MCAsmInfo member, make X86ATTInstPrinter
be a MCInstPrinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81746
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 01:43:38 +0000 (01:43 +0000)]
add a new MCInstPrinter class, move the (trivial) MCDisassmbler ctor inline.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81745
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 01:34:40 +0000 (01:34 +0000)]
tidy up a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81744
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 01:27:50 +0000 (01:27 +0000)]
slightly increase prettiness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81742
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 01:26:18 +0000 (01:26 +0000)]
emit the register table as a massive string to avoid relocations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81741
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 01:19:16 +0000 (01:19 +0000)]
move StringToOffsetTable out to its own header.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81740
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 Sep 2009 01:16:36 +0000 (01:16 +0000)]
factor string table generation out to its own class. This changes
the encoding of the AsmStrs table saving a byte or two.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81739
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 14 Sep 2009 00:36:52 +0000 (00:36 +0000)]
Don't leak! Always remove oneself as a listener after adding oneself.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81736
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sun, 13 Sep 2009 23:45:39 +0000 (23:45 +0000)]
Actually remove old types from the set.
Also break the type verification stuff into its own TypeSet to keep the
Verifier pass from becoming an AbstractTypeUser.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81729
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 22:45:04 +0000 (22:45 +0000)]
eliminate the TargetRegisterDesc::AsmName field, the asmprinters now have this table.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81728
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 22:42:03 +0000 (22:42 +0000)]
kill off the last use of TRI::AsmName.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81727
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 22:41:48 +0000 (22:41 +0000)]
add some special case handling for strangely named x86 registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81726
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 22:39:27 +0000 (22:39 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81725
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 22:28:17 +0000 (22:28 +0000)]
unbreak this test by working around an asmparser bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81724
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 22:24:34 +0000 (22:24 +0000)]
'printMCInst' doesn't print newlines after instructions anymore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81723
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Sun, 13 Sep 2009 22:18:38 +0000 (22:18 +0000)]
CMake: New user-settable variable LLVM_TARGET_ARCH useful when
cross-compiling.
Patch by Xerxes RĂ„nby!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81722
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sun, 13 Sep 2009 21:38:54 +0000 (21:38 +0000)]
Update the tutorial to match changes to examples/Kaleidoscope.
One change I'm not folding in is the removal of two unused variables that
caused warnings, because those were there for expository purposes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81721
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 21:31:21 +0000 (21:31 +0000)]
Move unittest driver to utils/unittest/UnitTestMain.
- This eliminates a race between building the unittests and linking the
UnitTestMain library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81719
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 21:31:07 +0000 (21:31 +0000)]
Remove unused variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81718
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sun, 13 Sep 2009 21:07:59 +0000 (21:07 +0000)]
Storing a set of PATypeHolders is a bad idea because their sort order will
change as types are refined. Remove abstract types from CheckedTypes when they
we're informed that they have been refined. The only way types get refined in
the verifier is when later function passes start optimizing. Fixes PR4970.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81716
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 20:31:40 +0000 (20:31 +0000)]
remove all but one reference to TargetRegisterDesc::AsmName.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81714
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 20:19:22 +0000 (20:19 +0000)]
the tblgen produced 'getRegisterName' method does not access
the object, make it static instead of const.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81711
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 20:15:16 +0000 (20:15 +0000)]
switch the x86 asmprinters to use getRegisterName instead
of getting it from TRI, inst printing now is codegen context
free!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81710
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Sun, 13 Sep 2009 20:14:57 +0000 (20:14 +0000)]
Fix a small issue with recent changes to this code.
The 'false.c' file wasn't being used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81709
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 20:08:00 +0000 (20:08 +0000)]
make tblgen produce a function that returns the name for a physreg.
Nothing is using this info yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81707
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 19:48:37 +0000 (19:48 +0000)]
eliminate an extraneous use of TRI::getAsmName in a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81705
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 19:44:38 +0000 (19:44 +0000)]
make intel asmprinter use TRI::getAsmName instead of TRI::getName like
all the other targets. Add support for weak/linkonce linkage so it doesn't
crash on basically all nontrivial testcases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81704
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 19:30:11 +0000 (19:30 +0000)]
split MCInst printing out of the X86ATTInstPrinter
class into its own X86ATTInstPrinter class. The inst
printer now has just one dependence on the code generator
(TRI).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81703
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 19:10:08 +0000 (19:10 +0000)]
reduce indentation with early exit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81699
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 19:03:08 +0000 (19:03 +0000)]
second part to r81695, I missed a directory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81696
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 19:02:16 +0000 (19:02 +0000)]
remove MAI::JumpTableSpecialLabelPrefix now that MAI
has real information about linker private linkage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81695
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 18:58:14 +0000 (18:58 +0000)]
Revert unittests build changes temporarily, the unit test build isn't -j safe.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81692
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 18:50:22 +0000 (18:50 +0000)]
delete the fixme too! :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81689
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 18:46:37 +0000 (18:46 +0000)]
merge the linux cpool/jtbl pic tests into pic.ll and convert to filecheck.
Change the picbase symbol on non-darwin systems from ".Lllvm$4.$piclabel" to
".L4$pb". The actual name doesn't matter and the darwin name is shorter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81688
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 18:43:46 +0000 (18:43 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81687
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 18:33:59 +0000 (18:33 +0000)]
make X86ATTAsmPrinter::PrintPICBaseSymbol forward to X86MCInstLower.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81685
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 18:25:37 +0000 (18:25 +0000)]
replace printBasicBlockLabel with EmitBasicBlockStart,
now that printBasicBlockLabel is only used for starting
a MBB. This allows elimination of a bunch of arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81684
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 18:11:09 +0000 (18:11 +0000)]
fix MCSymbol printing on darwin to exactly match the mangler (handling of \n and " in a symbol name).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81683
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 18:04:46 +0000 (18:04 +0000)]
Make the MC symbol printer and llvm::Mangler exactly agree on mangling
for systems that don't support quoting (PR4966).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81682
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 17:25:49 +0000 (17:25 +0000)]
remove two docs about the old Sparc backend which used Value*'s for vregs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81680
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 17:24:16 +0000 (17:24 +0000)]
move old clang readme here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81679
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 Sep 2009 17:14:04 +0000 (17:14 +0000)]
convert some uses of printBasicBlockLabel to use GetMBBSymbol
instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81677
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 02:45:57 +0000 (02:45 +0000)]
Add LLVMGCCBINDIR to path, since LLVMC expects to find llvm-gcc in the path.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81669
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 01:41:47 +0000 (01:41 +0000)]
Switch Ocaml to use llvm_supports_binding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81665
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 01:41:18 +0000 (01:41 +0000)]
tests: Add llvm_supports_binding predicate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81664
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 01:40:48 +0000 (01:40 +0000)]
tests: Use %abs_tmp instead of ./%t to make these tests portable to 'lit'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81663
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 01:39:50 +0000 (01:39 +0000)]
tests: Add a %abs_tmp substitution which is guaranteed to be a full path.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81662
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 01:39:08 +0000 (01:39 +0000)]
Sink llvm-gcc dependent tests into distinct subdirs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81661
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 01:37:07 +0000 (01:37 +0000)]
Rewrite tests to not use Tcl substitution.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81660
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 13 Sep 2009 01:36:19 +0000 (01:36 +0000)]
Simplify LLVMC tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81659
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 13 Sep 2009 01:12:15 +0000 (01:12 +0000)]
Fix merge problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81658
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 13 Sep 2009 00:59:43 +0000 (00:59 +0000)]
Define proper subreg sets for arm - this should fix bunch of subtle problems
with subreg - superreg mapping and also fix PR4965.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81657
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 12 Sep 2009 23:45:47 +0000 (23:45 +0000)]
Add -mattr=+sse2 to the -march=x86 version of this test. Without
sse, this code falls back to SelectionDAG isel which uses an x87
instruction, which is fine, but not what this test is testing for.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81656
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sat, 12 Sep 2009 23:29:02 +0000 (23:29 +0000)]
Experimental fix for PR4960.
- Could we just always implement this as __clear_cache for __GNUC__?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81655
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 Sep 2009 23:02:08 +0000 (23:02 +0000)]
devirtualize AsmPrinter::printBasicBlockLabel since it is never overridden.
Move GetMBBSymbol up to AsmPrinter and make printBasicBlockLabel use it so that
we only have one place that decides what to name bb labels. Hopefully various
clients of printBasicBlockLabel can start using GetMBBSymbol instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81652
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 Sep 2009 22:57:37 +0000 (22:57 +0000)]
we don't want people to override printBasicBlockLabel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81651
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 12 Sep 2009 22:24:25 +0000 (22:24 +0000)]
Remove unnecessary #include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81636
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sat, 12 Sep 2009 22:21:08 +0000 (22:21 +0000)]
Add QPR_VFP2 regclass and add copy_to_regclass nodes, where needed to
constraint the register usage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81635
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 12 Sep 2009 22:02:17 +0000 (22:02 +0000)]
Preserve the inbounds flag, so that the constant folder doesn't
recompute it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81634
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 12 Sep 2009 21:56:48 +0000 (21:56 +0000)]
Fix the build when DEBUG_SYMBOL_TABLE is set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81633
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 12 Sep 2009 21:55:12 +0000 (21:55 +0000)]
Convert llvm-link to IRReader.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81632
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 Sep 2009 21:06:08 +0000 (21:06 +0000)]
factor MBB label lowering better
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81630
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 Sep 2009 21:01:20 +0000 (21:01 +0000)]
X86MCInstLower::Lower should only not emit anything to OutStreamer,
this means that it can only lower one MachineInstr to one MCInst. To
make this fly, we need to pull out handling of MO_GOT_ABSOLUTE_ADDRESS
(which generates an implicit label) out of X86MCInstLower.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81629
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 Sep 2009 20:45:03 +0000 (20:45 +0000)]
eliminate the "MBBLabel" MCOperand type, and just use a MCSymbol for
MBB labels like everything else.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81628
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 Sep 2009 20:34:57 +0000 (20:34 +0000)]
split MachineInstr -> MCInst lowering into its own class (not
being embedded into X86ATTAsmPrinter). This still depends heavily
on X86ATTAsmPrinter, but this is a step in the right direction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81627
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 Sep 2009 20:01:36 +0000 (20:01 +0000)]
remove the "old" at&t style asmprinter. Unfortunately, most of the
operand printing crapola cannot be removed yet because it is used by
the inline asm print stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81626
91177308-0d34-0410-b5e6-
96231b3b80d8
Lang Hames [Sat, 12 Sep 2009 04:54:18 +0000 (04:54 +0000)]
Whoops. Committed the headers for r81605 - 'Moved some more index operations over to LiveIntervals.'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81609
91177308-0d34-0410-b5e6-
96231b3b80d8
Lang Hames [Sat, 12 Sep 2009 03:34:03 +0000 (03:34 +0000)]
Moved some more index operations over to LiveIntervals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81605
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Sat, 12 Sep 2009 02:52:41 +0000 (02:52 +0000)]
Added the WAIT instruction to the Intel tables,
for the purposes of the disassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81603
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Sat, 12 Sep 2009 02:25:20 +0000 (02:25 +0000)]
Added CMPS (string comparison) instructions for all
operand widths to the Intel instruction tables, for
the purposes of the disassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81601
91177308-0d34-0410-b5e6-
96231b3b80d8