Chandler Carruth
c4d6fd5b03
Make sysroot only apply to baked in paths which start with a '/'.
...
llvm-svn: 119095
2010-11-15 00:05:18 +00:00
Rafael Espindola
240028d11d
Move the logic to decide with which symbol we produce a relocation (if any) to
...
a central location. This also makes us a bit more compatible with gas.
llvm-svn: 119094
2010-11-14 23:53:26 +00:00
Chris Lattner
df8e17d80b
implement support for the MO_DARWIN_STUB TargetOperand flag,
...
and have isel apply to to call operands as required. This allows
us to get $stub suffixes on label references on ppc/tiger with the
new instprinter, fixing two tests. Only 2 to go.
llvm-svn: 119093
2010-11-14 23:42:06 +00:00
Chris Lattner
ea857d357f
tidy up, no functionality change.
...
llvm-svn: 119092
2010-11-14 23:32:42 +00:00
Greg Clayton
5a2c6d583d
Fixed the initWithNSString: function to properly initialize self.
...
llvm-svn: 119091
2010-11-14 23:12:29 +00:00
Chris Lattner
b7c67f6c17
with the picbase nonsense starting to be figured out, implement
...
lowering support for MovePCtoLR[8]. Down to 4 failures again.
llvm-svn: 119090
2010-11-14 22:56:43 +00:00
Chris Lattner
7077efe894
move the pic base symbol stuff up to MachineFunction
...
since it is trivial and will be shared between ppc and x86.
This substantially simplifies the X86 backend also.
llvm-svn: 119089
2010-11-14 22:48:15 +00:00
Chris Lattner
239f9a35ed
simplify getPICBaseSymbol a bit.
...
llvm-svn: 119088
2010-11-14 22:37:11 +00:00
Chris Lattner
94f0c14cb0
reimplement ppc asmprinter "toc" handling to use a VariantKind
...
on the operand, required for .o file writing and fixing
the PowerPC/mult-alt-generic-powerpc64.ll failure with the new
instprinter.
llvm-svn: 119087
2010-11-14 22:22:59 +00:00
Chris Lattner
295097cc32
add some nounwind's.
...
llvm-svn: 119086
2010-11-14 22:22:14 +00:00
Greg Clayton
83c5cd9dfd
Just like functions can have a basename and a mangled/demangled name, variable
...
can too. So now the lldb_private::Variable class has support for this.
Variables now have support for having a basename ("i"), and a mangled name
("_ZN12_GLOBAL__N_11iE"), and a demangled name ("(anonymous namespace)::i").
Nowwhen searching for a variable by name, users might enter the fully qualified
name, or just the basename. So new test functions were added to the Variable
and Mangled classes as:
bool NameMatches (const ConstString &name);
bool NameMatches (const RegularExpression ®ex);
I also modified "ClangExpressionDeclMap::FindVariableInScope" to also search
for global variables that are not in the current file scope by first starting
with the current module, then moving on to all modules.
Fixed an issue in the DWARF parser that could cause a varaible to get parsed
more than once. Now, once we have parsed a VariableSP for a DIE, we cache
the result even if a variable wasn't made so we don't do any re-parsing. Some
DW_TAG_variable DIEs don't have locations, or are missing vital info that
stops a debugger from being able to display anything for it, we parse a NULL
variable shared pointer for these DIEs so we don't keep trying to reparse it.
llvm-svn: 119085
2010-11-14 22:13:40 +00:00
Chris Lattner
2f9f63af0b
lower PPC::MFCRpseud when transforming to MC, avoiding calling
...
the aborting printSpecial() method. This gets us to 8 failures.
llvm-svn: 119084
2010-11-14 22:03:15 +00:00
Chris Lattner
cfb6287487
make the stubbed-out printer methods abort instead of
...
printing nothing. This gets us back up to 24 failures.
llvm-svn: 119083
2010-11-14 21:54:34 +00:00
Chris Lattner
f2cb69cb04
wire up a few more things, down to 4 test failures, all
...
about handling $stub, lo/hi etc.
llvm-svn: 119082
2010-11-14 21:51:37 +00:00
Chris Lattner
e2d75bf681
properly wire up the instprinter to the ppc64 backend, down to 5 failures.
...
llvm-svn: 119081
2010-11-14 21:42:53 +00:00
Chris Lattner
219cc3d586
implement pretty printing support for the various pseudo
...
ops the asmprinter supported, fixing PowerPC/rlwimi2.ll
among others. Down to 20 failures.
llvm-svn: 119080
2010-11-14 21:39:51 +00:00
Chris Lattner
c2ac86e261
Wire up symbol hi/lo printing. We don't print hi()/lo(), but this gets
...
us further along. Only 28 failures now.
llvm-svn: 119079
2010-11-14 21:33:07 +00:00
Chris Lattner
3dc9bb245f
implement basic support for symbol operand lowering,
...
and printing support for call operands. Down to 77 failures.
llvm-svn: 119078
2010-11-14 21:20:46 +00:00
Oscar Fuentes
edf0a1d55e
Detect presence of AsmPrinter's. Remove some cruft too.
...
llvm-svn: 119077
2010-11-14 21:17:13 +00:00
Oscar Fuentes
07c99ebf52
Updated CMake library dependencies.
...
llvm-svn: 119076
2010-11-14 21:17:08 +00:00
Chris Lattner
2aa8becf33
trim #includes.
...
llvm-svn: 119075
2010-11-14 21:16:04 +00:00
Chris Lattner
5c1b0cdec2
switch PPC to a simplified MCInstLowering model.
...
llvm-svn: 119074
2010-11-14 21:12:33 +00:00
Rafael Espindola
a7d0bed336
Fix another case of a .comm directive without a corresponding .type
...
directive.
llvm-svn: 119073
2010-11-14 21:11:16 +00:00
Chris Lattner
0927edf815
fix PPC.h to not pull in TargetMachine.h
...
llvm-svn: 119072
2010-11-14 21:09:28 +00:00
Chris Lattner
de16ca8ecc
rename LowerToMCInst -> LowerARMMachineInstrToMCInst.
...
llvm-svn: 119071
2010-11-14 21:00:02 +00:00
Chris Lattner
c5afd12557
even more simplifications. ARM MCInstLowering is now just
...
a single function instead of a class. It doesn't need the
complexity that X86 does.
llvm-svn: 119070
2010-11-14 20:58:38 +00:00
Chris Lattner
7c4dfc28ce
hopefully unbreak the cmake build, patch by frits van bommel.
...
llvm-svn: 119069
2010-11-14 20:51:15 +00:00
Chris Lattner
18442f5543
more shrinkification
...
llvm-svn: 119068
2010-11-14 20:41:53 +00:00
Chris Lattner
3040e8c69b
more simplifications.
...
llvm-svn: 119067
2010-11-14 20:40:08 +00:00
Chris Lattner
b28e691657
simplify and tidy up
...
llvm-svn: 119066
2010-11-14 20:31:06 +00:00
Chris Lattner
0dcd800b22
implement basic support for memory operands and crbit operands,
...
this fixes 3 more ppc tests.
llvm-svn: 119065
2010-11-14 20:22:56 +00:00
Oscar Fuentes
4d39cc4a62
CMakeLists.txt: removed mismatched endif predicate.
...
llvm-svn: 119064
2010-11-14 20:15:05 +00:00
Chris Lattner
9488143769
implement several trivial operand printers, reducing
...
failures in CodeGen/PowerPC from 120 -> 117
llvm-svn: 119063
2010-11-14 20:11:21 +00:00
Chris Lattner
7a5c57ecf4
Implement support for printing register and immediate operands,
...
add support for darwin vs aix syntax. We now can print instructions
like this:
add r3, r3, r4
blr
and (in aix mode):
add 3, 3, 4
blr
llvm-svn: 119062
2010-11-14 20:02:39 +00:00
Chris Lattner
686a095d89
stub out PPCMCInstLowering, add a new option that uses it and the new
...
instprinter when -enable-ppc-inst-printer is passed to llc.
llvm-svn: 119061
2010-11-14 19:53:02 +00:00
Rafael Espindola
b05ef7377a
Fix the type of a symbol created with .comm and no corresponding .type.
...
llvm-svn: 119060
2010-11-14 19:40:55 +00:00
Chris Lattner
a76eab433a
stub out a powerpc MCInstPrinter implementation.
...
llvm-svn: 119059
2010-11-14 19:40:38 +00:00
Chris Lattner
a4113464f3
hopefully fix cmake as well.
...
llvm-svn: 119058
2010-11-14 19:12:57 +00:00
Chris Lattner
287766075f
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.
llvm-svn: 119057
2010-11-14 19:10:47 +00:00
Chris Lattner
66031ed839
move all the target's asmprinters into the main target. The piece
...
that should be split out is the InstPrinter (if a target is mc'ized).
This change makes all the targets be consistent.
llvm-svn: 119056
2010-11-14 18:43:56 +00:00
Duncan Sands
b99f39b9f6
If dom tree information is available, make it possible to pass
...
it to get better phi node simplification.
llvm-svn: 119055
2010-11-14 18:36:10 +00:00
Chris Lattner
56477d1690
move PPCAsmPrinter into the main PPC library, like ARM and X86.
...
llvm-svn: 119054
2010-11-14 18:33:33 +00:00
Chris Lattner
dab307c6f4
fix cmake
...
llvm-svn: 119053
2010-11-14 18:27:11 +00:00
Chris Lattner
7b783e7cb2
no alpha jit support.
...
llvm-svn: 119052
2010-11-14 18:25:50 +00:00
Chris Lattner
9007c368c6
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.
llvm-svn: 119051
2010-11-14 18:24:41 +00:00
Dale Johannesen
2cd8b08207
Segregate tests by target.
...
llvm-svn: 119050
2010-11-14 18:14:32 +00:00
Chris Lattner
57479f5ce9
random acts of tidiness.
...
llvm-svn: 119049
2010-11-14 18:09:50 +00:00
Ted Kremenek
0526f52a49
Revert r119045. It was failing on Windows.
...
llvm-svn: 119048
2010-11-14 17:53:34 +00:00
Ted Kremenek
ca817a3c0c
"Fix" some unintentional fallout from converting
...
the Stmt* visitation in CursorVisitor to be
data-recursive.
Since AnnotationTokensWorker explicitly calls
CursorVisitor::VisitChildren(), it essentially
transforms the data-recursive algorithm in
CursorVisitor back into a non-data recursive one.
This is particularly bad because the data-recursive
algorithm uses more stack space per stack frame,
which can cause us to blow the stack in some cases.
"Fix" this by making the stack that AnnotationTokensWorker
runs in really huge. The real fix is to modify
AnnotationTokensWorker not to do the explicit
recursive call.
llvm-svn: 119047
2010-11-14 17:47:35 +00:00
Ted Kremenek
96b329c428
Clean up initialization of LangOptions object by splitting part of it into a parent class
...
'LangOptionsBase' that default initializes all flags to 0. Now the ctor of LangOptions
only initializes the flags that might be non-zero (significantly simplifying things).
This also appeases Valgrind on Mac OS X, which no longer reports that one of the flags
may be uninitialized.
llvm-svn: 119045
2010-11-14 17:04:23 +00:00