Gabor Greif
27c7a9dfcd
here comes the CMAKE part on LLVM_COMPACT_SENTINELS; see also r78628 and r78661
...
llvm-svn: 78803
2009-08-12 08:37:37 +00:00
Chris Lattner
9a6cf91261
Change TargetAsmInfo to be constructed via TargetRegistry from a Target+Triple
...
pair instead of from a virtual method on TargetMachine. This cuts the final
ties of TargetAsmInfo to TargetMachine, meaning that MC can now use
TargetAsmInfo.
llvm-svn: 78802
2009-08-12 07:22:17 +00:00
Chris Lattner
1235f20744
one last (?) bad x86 triple test.
...
llvm-svn: 78801
2009-08-12 06:49:44 +00:00
Chris Lattner
6628e17344
fix some pastos in triple lines.
...
llvm-svn: 78800
2009-08-12 06:49:12 +00:00
Chris Lattner
8268cc9c77
the x86 version of the name is x86-64, not x86_64. Handle this properly
...
in getArchTypeForLLVMName.
llvm-svn: 78799
2009-08-12 06:45:02 +00:00
Chris Lattner
0ea6e4cc7f
another bogus triple
...
llvm-svn: 78798
2009-08-12 06:36:52 +00:00
Chris Lattner
e0971bc29f
add support for mingw64 target triples.
...
llvm-svn: 78797
2009-08-12 06:32:10 +00:00
Chris Lattner
8c2d846a42
fix another broken target triple.
...
llvm-svn: 78796
2009-08-12 06:29:18 +00:00
Chris Lattner
d4a70aedb0
fix an incorrect target triple.
...
llvm-svn: 78795
2009-08-12 06:28:51 +00:00
Jakob Stoklund Olesen
ee01029811
Move immediate constant predicate templates from the Blackfin target to MathExtras.h
...
llvm-svn: 78793
2009-08-12 06:22:07 +00:00
Chris Lattner
553c9f35a7
add a couple of helpers to the Triple class for decoding
...
the darwin version string. This should help consolidate
the variety of weird functions we have scattered around the
codebase that do stuff like this.
llvm-svn: 78792
2009-08-12 06:19:40 +00:00
Chris Lattner
774a88aa77
add nounwind
...
llvm-svn: 78791
2009-08-12 05:44:03 +00:00
Evan Cheng
bb2af3555c
Shrink Thumb2 movcc instructions.
...
llvm-svn: 78790
2009-08-12 05:17:19 +00:00
Oscar Fuentes
da3b250796
CMake: Fixed sed script for translating library dependencies from
...
LibDeps.txt format to LLVMLibDeps.cmake format.
llvm-svn: 78789
2009-08-12 04:18:10 +00:00
Oscar Fuentes
06eef1c2fe
CMake: Localized dependency on Perl.
...
llvm-svn: 78788
2009-08-12 04:16:19 +00:00
Oscar Fuentes
a88916d94f
CMake: Rely on llvm_config again for obtaining the list of required
...
libraries for an executable.
Now LLVMConfig uses a new system for sorting library dependencies, as
the list of dependent libraries for each entry of FinalLibDeps.txt no
longer is topologically sorted.
llvm-svn: 78787
2009-08-12 04:05:26 +00:00
Oscar Fuentes
1b9110699c
CMake: updated library dependencies.
...
llvm-svn: 78786
2009-08-12 03:57:26 +00:00
Oscar Fuentes
f7591af58e
CMake: cmake/modules/LLVMLibDeps.cmake: Use unix line endings.
...
llvm-svn: 78785
2009-08-12 03:36:43 +00:00
Oscar Fuentes
64f955b732
CMake: Moved hard-coded library dependencies to its own file.
...
llvm-svn: 78784
2009-08-12 03:32:44 +00:00
Evan Cheng
81348021b1
Remove another Darwin assembler workaround.
...
llvm-svn: 78779
2009-08-12 02:07:19 +00:00
Evan Cheng
fd10869d4b
80 col violation.
...
llvm-svn: 78778
2009-08-12 02:03:03 +00:00
Evan Cheng
608d92c943
Remove an Darwin assembler workaround.
...
llvm-svn: 78777
2009-08-12 01:56:42 +00:00
Evan Cheng
1e6c2a1c17
Shrink ADDS, ADC, RSB, and SUBS.
...
llvm-svn: 78776
2009-08-12 01:49:45 +00:00
Bob Wilson
9e8b647539
Add some comments to clarify the arguments to the vtbl and vtbx intrinsics.
...
llvm-svn: 78775
2009-08-12 01:48:30 +00:00
Bill Wendling
c1aa4edbde
Testcase for r78770.
...
llvm-svn: 78774
2009-08-12 01:47:51 +00:00
Dan Gohman
2a767c0d26
This logic was accidentally inverted in r78767.
...
llvm-svn: 78773
2009-08-12 01:44:20 +00:00
Oscar Fuentes
fc081d6139
CMake: Do not install files with .tmp suffix.
...
llvm-svn: 78769
2009-08-12 01:37:33 +00:00
Oscar Fuentes
c1341ea9de
CMake: Re-enabled build of llvm-config. Removed recursive invocation
...
of cmake.
llvm-svn: 78768
2009-08-12 01:36:27 +00:00
Dan Gohman
f7912edba5
Factor out the code for finding an available register for use
...
in breaking an anti-dependence into a separate function.
llvm-svn: 78767
2009-08-12 01:33:27 +00:00
Dale Johannesen
419a5b98ec
Test for llvm-gcc patch 78762.
...
llvm-svn: 78763
2009-08-12 01:14:30 +00:00
Bob Wilson
f042eadd1e
Add missing chain operands for VLD* and VST* instructions.
...
Set "mayLoad" and "mayStore" on the load/store instructions.
llvm-svn: 78761
2009-08-12 00:49:01 +00:00
Owen Anderson
117c9e8497
Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first.
...
llvm-svn: 78759
2009-08-12 00:36:31 +00:00
Dan Gohman
a3be3d7a89
llvm-gcc now emits inbounds for this getelementptr.
...
llvm-svn: 78758
2009-08-12 00:35:55 +00:00
Dan Gohman
76733748e1
Simplify this code, and use an in-bounds GEP.
...
llvm-svn: 78755
2009-08-12 00:32:55 +00:00
Oscar Fuentes
e93b54be8d
CMake: target triple for MSVC on Windows 64.
...
llvm-svn: 78753
2009-08-12 00:04:12 +00:00
Daniel Dunbar
3fb754af06
llvm-mc/AsmParser: Match hard coded registers (e.g. 'shldl %cl, %eax, %eax')
...
We now match all of 403.gcc (as emitted by clang). :)
llvm-svn: 78750
2009-08-11 23:23:44 +00:00
Chris Lattner
2b083cf989
prune #include
...
llvm-svn: 78749
2009-08-11 23:07:27 +00:00
Chris Lattner
b9c1d6c86e
prune #includage.
...
llvm-svn: 78748
2009-08-11 23:06:16 +00:00
Chris Lattner
96db1abb77
fix CodeGen/PowerPC/2007-01-15-AsmDialect.ll, fallout from r78742
...
llvm-svn: 78747
2009-08-11 23:03:40 +00:00
Chris Lattner
1e9097e36a
change the -x86-asm-syntax=intel/att flag to be in X86TAI
...
instead of X86 Subtarget. This elimianates dependencies on
X86Subtarget from X86TAI.
llvm-svn: 78746
2009-08-11 23:01:09 +00:00
Evan Cheng
f6a9d06241
Shrinkify Thumb2 r = add sp, imm.
...
llvm-svn: 78745
2009-08-11 23:00:31 +00:00
Chris Lattner
97868fe1b9
second half of commit.
...
llvm-svn: 78744
2009-08-11 22:52:15 +00:00
Chris Lattner
63d5be8a7b
pass "is64Bit" flag into PPC TAI ctors instead of a whole targetmachine.
...
llvm-svn: 78743
2009-08-11 22:51:34 +00:00
Chris Lattner
e655521a28
eliminate asmflavor from subtarget, PPCTAI is the only client
...
and each callee knows that it returns.
llvm-svn: 78742
2009-08-11 22:49:34 +00:00
Chris Lattner
abdcbc7ef2
Change the asmprinter to print the comment character before the
...
"inlineasmstart/end" strings so that the contents of the directive
are separate from the comment character. This lets elf targets
get #APP/#NOAPP for free even if they don't use "#" as the comment
character. This also allows hoisting the darwin stuff up to the
shared TAI class.
llvm-svn: 78737
2009-08-11 22:39:40 +00:00
David Goodwin
fd5defed1d
Allow a zero cycle stage to reserve/require a FU without advancing the cycle counter.
...
llvm-svn: 78736
2009-08-11 22:38:43 +00:00
Chris Lattner
54075a78b4
factorize more darwin TAI stuff. Note that this gives
...
darwin/arm support for .no_dead_strip
llvm-svn: 78734
2009-08-11 22:31:42 +00:00
Daniel Dunbar
526bcd461a
X86/AsmParser: Mark MOV64GSrm, MOV64FSrm, GS_MOV32rm, FS_MOV32rm as codegen only.
...
llvm-svn: 78733
2009-08-11 22:24:40 +00:00
Chris Lattner
6747b39ca5
factorize darwin ProtectedDirective and SetDirective.
...
llvm-svn: 78732
2009-08-11 22:22:44 +00:00
Daniel Dunbar
c4f8ea4ccb
Add 'isCodeGenOnly' bit to Instruction .td records.
...
- Used to mark fake instructions which don't correspond to an actual machine
instruction (or are duplicates of a real instruction). This is to be used for
"special cases" in the .td files, which should be ignored by things like the
assembler and disassembler. We still need a good solution to handle pervasive
duplication, like with the Int_ instructions.
- Set the bit on fake "mov 0" style instructions, which allows turning an
assembler matcher warning into a hard error.
- -2 FIXMEs.
llvm-svn: 78731
2009-08-11 22:17:52 +00:00
Chris Lattner
d832c8e87c
all darwin targets have .space and .zerofill, pull up.
...
llvm-svn: 78730
2009-08-11 22:17:31 +00:00
Chris Lattner
f710f71839
eliminate template from arm TAI
...
llvm-svn: 78729
2009-08-11 22:14:59 +00:00
Chris Lattner
374d5770f0
fix a bug I introduced in r78724 that caused failures in:
...
CodeGen/X86/dll-linkage.ll & CodeGen/X86/mingw-alloca.ll
llvm-svn: 78728
2009-08-11 22:12:58 +00:00
Chris Lattner
7faf1fd9a0
move LCOMMDirective = "\t.lcomm\t" up to DarwinTAI, eliminate
...
template in PPC backend for TAI.
llvm-svn: 78727
2009-08-11 22:06:07 +00:00
Owen Anderson
c6daf8f17c
Fix warnings.
...
llvm-svn: 78725
2009-08-11 21:59:30 +00:00
Chris Lattner
0909918514
eliminate the X86TargetAsmInfo template.
...
llvm-svn: 78724
2009-08-11 21:57:08 +00:00
Sean Callanan
f0e62eb78f
Added ADD instructions with rAX as one parameter to the Intel instruction
...
tables.
llvm-svn: 78721
2009-08-11 21:26:06 +00:00
Evan Cheng
cc9ca3500d
Shrinkify Thumb2 load / store multiple instructions.
...
llvm-svn: 78717
2009-08-11 21:11:32 +00:00
Daniel Dunbar
e431871851
llvm-mc/AsmParser: Allow target to specific a comment delimiter, which will be
...
used to strip hard coded comments out of .td assembly strings.
llvm-svn: 78716
2009-08-11 20:59:47 +00:00
Owen Anderson
828e2644fc
struct -> class
...
llvm-svn: 78715
2009-08-11 20:52:44 +00:00
Dan Gohman
dbae4db67a
Optimize exact sdiv by a constant power of 2 to ashr.
...
llvm-svn: 78714
2009-08-11 20:47:47 +00:00
Owen Anderson
9f94459d24
Split EVT into MVT and EVT, the former representing _just_ a primitive type, while
...
the latter is capable of representing either a primitive or an extended type.
llvm-svn: 78713
2009-08-11 20:47:22 +00:00
Daniel Dunbar
a1e04d43c4
StringRef: Add find(char) and find(StringRef).
...
Also, regroup functions.
llvm-svn: 78712
2009-08-11 20:47:15 +00:00
Chris Lattner
2c30970b22
pass the TargetTriple down from each target ctor to the
...
LLVMTargetMachine ctor. It is currently unused.
llvm-svn: 78711
2009-08-11 20:42:37 +00:00
Chris Lattner
67e5ea2726
now that JumpTableDirective can differentate picness itself, MIPS TAI
...
no longer needs a targetmachine to initialize itself.
llvm-svn: 78710
2009-08-11 20:32:51 +00:00
Chris Lattner
fe27130454
split "JumpTableDirective" (an existing hack) into a PIC and nonPIC
...
version. This allows TAI implementations to specify the directive to use
based on the mode being codegen'd for.
The real fix for this is to remove JumpTableDirective, but I don't feel
like diving into the jumptable snarl just now.
llvm-svn: 78709
2009-08-11 20:30:58 +00:00
Chris Lattner
d5a9179685
"TAI::JumpTableDirective" is always null for current arm targets, simplify
...
the code based on this and make it fall through better.
llvm-svn: 78708
2009-08-11 20:29:57 +00:00
Dan Gohman
77ad32ab0e
Add convenience functions for creating nsw add operators.
...
llvm-svn: 78707
2009-08-11 20:20:39 +00:00
Daniel Dunbar
34c8791ff0
llvm-mc/AsmMatcher: Fix two thinkos in determining whether two classes are
...
related.
llvm-svn: 78706
2009-08-11 20:10:07 +00:00
Dan Gohman
f9d12f23cb
Use wchar.h to get wchar_t, not ctype.h.
...
llvm-svn: 78703
2009-08-11 19:59:21 +00:00
Dan Gohman
221a2c711d
Don't set the isexact flag if an sdiv operator has been folded into
...
something else.
llvm-svn: 78702
2009-08-11 19:56:00 +00:00
Jim Grosbach
841850ed26
Add Thumb2 eh_sjlj_setjmp implementation
...
llvm-svn: 78701
2009-08-11 19:42:21 +00:00
Daniel Dunbar
919fe2bd2f
Simplify ConstantExpr::getInBoundsGetElementPtr and fix a possible crash, if
...
constant folding eliminated the GEP instruction.
- clang was hitting this on its test suite (for x86_64, at least).
llvm-svn: 78698
2009-08-11 18:28:09 +00:00
Daniel Dunbar
270968279b
Revert 78680 until I figure out why it completely broke things.
...
llvm-svn: 78697
2009-08-11 18:11:15 +00:00
Devang Patel
5c310be0ff
Link NamedMDNodes.
...
llvm-svn: 78696
2009-08-11 18:01:24 +00:00
Dan Gohman
50c09d0ca3
Add convenience functions for creating inbounds GEPs.
...
llvm-svn: 78695
2009-08-11 17:57:01 +00:00
David Goodwin
92492f2f8e
Use DEBUG macro for debug output.
...
llvm-svn: 78694
2009-08-11 17:56:42 +00:00
Chris Lattner
5d47e93532
add a trivial line # cache to SourceMgr to make repeated queries to
...
FindLineNumber much faster when in sequence.
llvm-svn: 78693
2009-08-11 17:49:14 +00:00
Daniel Dunbar
7f8a9ebc8d
llvm-mc: Fix a crash on invalid due to a typo in relocatable expression
...
evaluation.
llvm-svn: 78692
2009-08-11 17:47:52 +00:00
Benjamin Kramer
78c3bcb582
Make LLVMContext and LLVMContextImpl classes instead of structs.
...
llvm-svn: 78690
2009-08-11 17:45:13 +00:00
Daniel Dunbar
5c13812e2f
Remove some unnecessary LoadInst constructors, missed during Twinification.
...
llvm-svn: 78689
2009-08-11 17:38:47 +00:00
Chris Lattner
73e9f8c636
make owen happy by being explicit.
...
llvm-svn: 78688
2009-08-11 17:38:15 +00:00
David Goodwin
ebd694bb0a
Add some debug output.
...
llvm-svn: 78687
2009-08-11 17:35:23 +00:00
Benjamin Kramer
0334d91a4a
Fix struct/class mismatch.
...
llvm-svn: 78686
2009-08-11 17:27:20 +00:00
Dan Gohman
4bdbad7ebf
Use isa instead of dyn_cast when the result is only converted to bool.
...
llvm-svn: 78685
2009-08-11 17:20:16 +00:00
Devang Patel
6fdf5484c9
Fix cut-n-pasto in comment.
...
llvm-svn: 78684
2009-08-11 17:15:47 +00:00
Jim Grosbach
1d5350c08f
fix GetInstSizeInBytes for eh_sjlj_setjmp
...
llvm-svn: 78683
2009-08-11 17:08:15 +00:00
Dan Gohman
58f4d89a10
Add convenience functions for creating exact sdiv operators, and
...
use them in CreatePtrDiff.
llvm-svn: 78682
2009-08-11 17:05:24 +00:00
Dan Gohman
d6c611e6e8
Avoid implicitly depending on Instructions.h.
...
llvm-svn: 78681
2009-08-11 17:03:18 +00:00
Chris Lattner
ab2460c066
move some 32-bit instrs to x86instrinfo.td
...
llvm-svn: 78680
2009-08-11 16:58:39 +00:00
Benjamin Kramer
7570a9ceae
Revert 78662 to fix broken windows build. Add a comment which explains the problem.
...
llvm-svn: 78679
2009-08-11 16:41:22 +00:00
Benjamin Kramer
eda08015ee
This void is implicit in C++.
...
llvm-svn: 78678
2009-08-11 16:03:08 +00:00
Dan Gohman
7c50c9bd63
Tidy #includes.
...
llvm-svn: 78677
2009-08-11 16:02:12 +00:00
Dan Gohman
aa3fb65349
Simplify this code. The case where one class is GR64RegClass and the
...
other is a subclass of it is effectively handled by the prior tests.
llvm-svn: 78676
2009-08-11 15:59:48 +00:00
Dan Gohman
557baeeae4
Add an explicit keyword.
...
llvm-svn: 78675
2009-08-11 15:57:42 +00:00
Dan Gohman
f5adff9c41
ConstantFolder and NoFolder no longer require their Context members.
...
llvm-svn: 78673
2009-08-11 15:56:12 +00:00
Chris Lattner
0c533d909a
now that these are in file-check format, we can merge them together
...
into one bigger test (which runs faster)
llvm-svn: 78672
2009-08-11 15:54:17 +00:00
Dan Gohman
5211b0128b
Fix a typo in an assertion string.
...
llvm-svn: 78671
2009-08-11 15:53:15 +00:00
Dan Gohman
866d263392
Use the default copy-ctor, copy-assignment, and destructor.
...
llvm-svn: 78670
2009-08-11 15:52:30 +00:00
Dan Gohman
ce594f5d64
Add a comment about the additional meaning of setPreservesCFG() for
...
MachineFunctionPass passes.
llvm-svn: 78669
2009-08-11 15:50:56 +00:00