Xerxes Ranby
230c717e0b
updated lib/CodeGen/CMakeLists.txt to unbreak cmake build after r82018
...
llvm-svn: 82038
2009-09-16 10:18:36 +00:00
Andreas Neustifter
f8cb758ba8
Preserve ProfileInfo during CodeGenPrepare.
...
llvm-svn: 82034
2009-09-16 09:26:52 +00:00
Chris Lattner
05f4039763
move FnStubs/GVSTubs/HiddenGVStub handling out of the X86 asmprinter
...
and use MachineModuleInfoMachO instead.
llvm-svn: 82022
2009-09-16 06:25:03 +00:00
Chris Lattner
3828c2fa80
revert a hunk of r82018 that wasn't supposed to go in yet.
...
llvm-svn: 82020
2009-09-16 06:04:53 +00:00
Chris Lattner
f3f54ffc89
add a new MachineModuleInfoMachO class, which is the per-module
...
stuff common across all macho targets.
llvm-svn: 82018
2009-09-16 06:03:48 +00:00
Chris Lattner
e18a53890a
apparently russians are really hard to sort or something!
...
llvm-svn: 82016
2009-09-16 05:42:12 +00:00
Chris Lattner
60e7c3de64
I can sort, no really.
...
llvm-svn: 82015
2009-09-16 05:37:13 +00:00
Chris Lattner
89094f2b37
make more clear since it is sorted by last name now.
...
llvm-svn: 82014
2009-09-16 05:36:54 +00:00
Chris Lattner
66b1ab1a9f
Doug is now the code owner for most of the Clang frontend.
...
llvm-svn: 82013
2009-09-16 05:36:07 +00:00
Chris Lattner
07fc26d63c
the pointer MMI keeps will start out with object-file format specific stuff
...
llvm-svn: 82012
2009-09-16 05:26:00 +00:00
Chris Lattner
273215733c
tidy up
...
llvm-svn: 82011
2009-09-16 05:25:43 +00:00
Chris Lattner
46dcaadb4a
rearrange X86ATTAsmPrinter::doFinalization, making a scan of
...
the global variable list only happen for COFF targets.
llvm-svn: 82010
2009-09-16 05:20:33 +00:00
Chris Lattner
890ceff6ec
Ted is christened as the owner of the clang static analyzer.
...
llvm-svn: 82008
2009-09-16 04:59:30 +00:00
Chris Lattner
8df79f2681
remove the AsmPrinter::printMCInst hook hack now that
...
we have MCInstPrinter.
llvm-svn: 82006
2009-09-16 04:57:15 +00:00
Shantonu Sen
b15840a6d6
fix cmake build
...
llvm-svn: 81999
2009-09-16 04:44:00 +00:00
Chris Lattner
c6a889d0b6
use an accessor to simplify code.
...
llvm-svn: 81997
2009-09-16 04:12:47 +00:00
Nate Begeman
1ae49ee7ca
Do not try and sink a load whose chain result has more than one use, when
...
trying to create RMW opportunities in the x86 backend. This can cause a
cycle to appear in the graph, since the other uses may eventually feed into
the TokenFactor we are sinking the load below.
llvm-svn: 81996
2009-09-16 03:20:46 +00:00
Sean Callanan
771a1f1720
Added the ENTER instruction, which sets up a stack
...
frame, to the Intel instruction tables.
llvm-svn: 81995
2009-09-16 02:57:13 +00:00
Sean Callanan
0fdee53266
Added the definitions for one-bit left shifts to
...
the Intel instruction tables.
The patterns will stay blank because ADD reg, reg
is faster, but having the encoding available is
useful for the disassembler.
llvm-svn: 81994
2009-09-16 02:28:43 +00:00
Dan Gohman
3b7ce109ec
Don't sink gep operators through phi nodes if the result would require
...
more than one phi, since that leads to higher register pressure on
entry to the phi. This is especially problematic when the phi is in
a loop header, as it increases register pressure throughout the loop.
llvm-svn: 81993
2009-09-16 02:01:52 +00:00
Sean Callanan
1c28c4db58
Removed a few instructions that were already
...
covered by other definitions.
llvm-svn: 81992
2009-09-16 01:54:38 +00:00
Chris Lattner
b866602f06
Big change #1 for personality function references:
...
Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding
fields from MAI: they aren't part of the asm syntax, they are
related to the structure of the object file.
To replace their functionality, add a new
TLOF::getSymbolForDwarfGlobalReference method which asks targets
to decide how to reference a global from EH in a pc-relative way.
The default implementation just returns the symbol. The default
darwin implementation references the symbol through an indirect
$non_lazy_ptr stub. The bizarro x86-64 darwin specialization
handles the weird "foo@GOTPCREL+4" hack.
DwarfException.cpp now uses this to emit the reference to the
symbol in the right way, and this also eliminates another
horrible hack from DwarfException.cpp:
- if (strcmp(MAI->getPersonalitySuffix(), "+4@GOTPCREL"))
- O << "-" << MAI->getPCSymbol();
llvm-svn: 81991
2009-09-16 01:46:41 +00:00
Daniel Dunbar
8d2aa38377
lit: Add a custom test format for use in clang.
...
llvm-svn: 81987
2009-09-16 01:34:52 +00:00
Chris Lattner
0d3f6962a1
remove a dead variable.
...
llvm-svn: 81985
2009-09-16 01:29:11 +00:00
Chris Lattner
6a833f6806
add a helper method for creating MCSymbol and MCSymbolRefExpr at
...
the same time.
llvm-svn: 81984
2009-09-16 01:26:31 +00:00
Sean Callanan
e739ac8900
Added a variety of floating-point and SSE instructions.
...
All of these do not have patterns (they're for the
disassembler).
Many of the floating-point instructions will probably
be rolled into definitions that have patterns, and may
eventually be superseded by mdefs. So I put them
together and left a comment.
llvm-svn: 81979
2009-09-16 01:13:52 +00:00
Chris Lattner
6b99ae882b
inline AsmPrinter::getCurrentFunctionEHName into its only caller.
...
llvm-svn: 81970
2009-09-16 00:35:39 +00:00
Bob Wilson
6cc46577f4
Expand some more vector operations not supported by Neon.
...
llvm-svn: 81969
2009-09-16 00:32:15 +00:00
Chris Lattner
727ad714e2
remove a dead bool.
...
llvm-svn: 81968
2009-09-16 00:24:31 +00:00
Chris Lattner
d106abfce7
Eliminate AsmPrinter::EmitExternalGlobal, inlining its (now)
...
one implementation into its one caller. This eliminates a totally
awesome and gratuitous hack where we casted a Function* to
GlobalVariable*.
llvm-svn: 81967
2009-09-16 00:17:39 +00:00
Bob Wilson
4ed397c141
Neon does not support vector divide or remainder. Expand them.
...
llvm-svn: 81966
2009-09-16 00:17:28 +00:00
Chris Lattner
4e465598f0
eliminate the PPC backend's implementation of EmitExternalGlobal
...
and use PersonalityPrefix/Suffix to achieve the same effect (like
the x86 backend).
This changes the code generated for ppc static mode, but guess what,
we were generating this before:
.byte 0x9B ; Personality (indirect pcrel sdata4)
.long ___gxx_personality_v0-. ; Personality
which is not correct! (it is not an 'indirect' reference).
llvm-svn: 81965
2009-09-16 00:14:19 +00:00
Chris Lattner
dd5a989034
eliminate the horrid AsmPrinter::getGlobalLinkName method, inlining
...
it into all of its call sites and simplifying them.
llvm-svn: 81962
2009-09-16 00:08:41 +00:00
Chris Lattner
3045f9e57b
simplify some code
...
llvm-svn: 81961
2009-09-16 00:08:07 +00:00
Bob Wilson
194a2518e5
Expand all v2f64 arithmetic operations for Neon.
...
Radar 7200803. (This should also fix the
SingleSource/UnitTests/Vector/sumarray-dbl test.)
llvm-svn: 81959
2009-09-15 23:55:57 +00:00
Daniel Dunbar
e7430efb62
Put back non-obsolete -f sections for 'opt'.
...
llvm-svn: 81954
2009-09-15 23:40:07 +00:00
Sean Callanan
f8f6479388
Added far return instructions (that is, returns to
...
code in other segments) to the Intel instruction
tables.
llvm-svn: 81953
2009-09-15 23:37:51 +00:00
Chris Lattner
2251293788
remove some horrible MAI hooks which fortunately turn out to be always empty.
...
llvm-svn: 81946
2009-09-15 23:11:32 +00:00
Chris Lattner
7b40df7589
strength reduce a call to PrintRelDirective(true).
...
llvm-svn: 81942
2009-09-15 22:58:35 +00:00
Chris Lattner
f2471ec967
add hooks to hang target-specific goop off MachineModuleInfo,
...
move MachineFunctionInfo virtual method out of line to give it
a home.
llvm-svn: 81940
2009-09-15 22:44:26 +00:00
Nate Begeman
fbb88b180c
Do not add the SVOffset to the Node CSE ID. The same pointer argument cannot have different
...
SVOffsets.
llvm-svn: 81937
2009-09-15 22:30:11 +00:00
Eric Christopher
17f54d0f42
Expand on comment.
...
llvm-svn: 81928
2009-09-15 21:56:46 +00:00
Sean Callanan
7a27b9342c
Updated comments per Eli's suggestion.
...
llvm-svn: 81923
2009-09-15 21:43:27 +00:00
Bob Wilson
0bf35c25fe
Convert more tests to FileCheck.
...
llvm-svn: 81915
2009-09-15 20:58:02 +00:00
Sean Callanan
79b570de9d
Added register-to-register ADD instructions to the
...
Intel tables, where the source operand is
specified by the R/M field and the destination
operand by the Reg field.
llvm-svn: 81914
2009-09-15 20:53:57 +00:00
Daniel Dunbar
316b4a0206
Drop the raw_ostream required buffer size to 1.
...
- As best I can tell, we have eliminated all the code which used to require a
larger buffer size.
llvm-svn: 81912
2009-09-15 20:31:46 +00:00
Daniel Dunbar
3ef7d8f4b4
Remove references to obsolete -f option.
...
llvm-svn: 81911
2009-09-15 20:31:35 +00:00
Daniel Dunbar
b87ddb53e5
Update llc/opt PODs to clarify they support .ll input.
...
llvm-svn: 81910
2009-09-15 20:31:28 +00:00
Daniel Dunbar
9367ec8644
Fix -Asserts warning.
...
llvm-svn: 81909
2009-09-15 20:31:12 +00:00
Daniel Dunbar
42d25debb4
lit: When finding nested test suites, check first in the execpath in case there
...
is a site configuration.
llvm-svn: 81902
2009-09-15 20:09:17 +00:00