Evan Cheng
da9b752883
FIX PR2794. Make sure SIGN_EXTEND_INREG nodes introduced by LegalizeSetCCOperands are leglized. Patch by Richard Pennington.
...
llvm-svn: 57460
2008-10-13 18:46:18 +00:00
Duncan Sands
8547c2d56f
MarkModRef -> AddReadAttrs.
...
llvm-svn: 57459
2008-10-13 18:42:43 +00:00
Evan Cheng
4c499c4fa6
Also update sub-register intervals after a trivial computation is rematt'ed for a copy instruction. PR2775.
...
llvm-svn: 57458
2008-10-13 18:35:52 +00:00
Duncan Sands
b34d5906b8
Add some llvm-gcc changes that may be worth
...
detailing.
llvm-svn: 57457
2008-10-13 18:33:28 +00:00
Evan Cheng
762f0f53ec
Add a test case for _Complex passed as a FCA.
...
llvm-svn: 57456
2008-10-13 18:13:07 +00:00
Chris Lattner
44c09cd164
give the static analyzer its own section.
...
llvm-svn: 57455
2008-10-13 18:11:54 +00:00
Chris Lattner
f5cd98683e
more rearranging.
...
llvm-svn: 57453
2008-10-13 18:01:01 +00:00
Chris Lattner
1e4d5bc071
move major changes down.
...
llvm-svn: 57452
2008-10-13 17:57:36 +00:00
Duncan Sands
719f778de5
Fix typo. Add note on trampoline support.
...
llvm-svn: 57450
2008-10-13 17:32:15 +00:00
Evan Cheng
be688ffced
Clarify meaning of copyRegToReg's return value.
...
llvm-svn: 57449
2008-10-13 17:30:56 +00:00
Duncan Sands
aef747fc53
Update the Ada part.
...
llvm-svn: 57447
2008-10-13 17:27:23 +00:00
Chris Lattner
3fc6e59083
final note.
...
llvm-svn: 57446
2008-10-13 17:12:51 +00:00
Daniel Dunbar
d9eff3d4e4
Lift out ABIInfo abstract base class.
...
- Currently still lives in CGCall.cpp but is intended to be the
target specific place for hooking ABI information.
- Select ABIInfo to use based on Target's prefix and pointer width.
llvm-svn: 57445
2008-10-13 17:02:26 +00:00
Chris Lattner
0ae020952b
fix some crazily long lines.
...
llvm-svn: 57444
2008-10-13 16:55:18 +00:00
Matthijs Kooijman
f7d3cb5435
Make InstructionCombining::getBitCastOperand() recognize GEP instructions and
...
constant expression with all zero indices as being the same as a bitcast.
llvm-svn: 57442
2008-10-13 15:17:01 +00:00
Matthijs Kooijman
0e2682781c
Improve the description on the getelementptr instruction. It should now better
...
define what the instruction does. This also makes it clear that getelementptr
can index into a vector type.
llvm-svn: 57440
2008-10-13 13:44:15 +00:00
Matthijs Kooijman
43686a6665
* Make TargetLowering not crash when TargetMachine::getTargetAsmInfo() returns
...
null. This assumes that any target that does not have AsmInfo, does not
support "LocAndDot".
llvm-svn: 57438
2008-10-13 12:41:46 +00:00
Matthijs Kooijman
c8d7988da8
Make MachineFunction not crash when TargetMachine::getRegisterInfo() returns
...
NULL, but just hide some debug output then.
llvm-svn: 57437
2008-10-13 12:37:16 +00:00
Gabor Greif
35e1387ac6
fix typo's
...
llvm-svn: 57435
2008-10-13 10:28:12 +00:00
Gabor Greif
da83472fa6
remove a deprecated internal interface
...
llvm-svn: 57434
2008-10-13 10:25:27 +00:00
Gabor Greif
cf1d1b7fbc
do not use deprecated interfaces
...
llvm-svn: 57433
2008-10-13 10:21:17 +00:00
Gabor Greif
dae874ced9
ignore the standard output dirs
...
llvm-svn: 57432
2008-10-13 09:38:08 +00:00
Nick Lewycky
707663eda8
Disallow the construction of SCEVs with could-not-compute operands. Catch CNCs
...
returned by BinomialCoefficient and don't try to operate with them. This
replaces the previous fix for PR2857.
llvm-svn: 57431
2008-10-13 03:58:02 +00:00
Mikhail Glushenkov
d3ec89e733
Add whitespace before a parenthesis.
...
llvm-svn: 57430
2008-10-13 02:46:01 +00:00
Mikhail Glushenkov
024f7cf859
Add a note on llvmc2 plugins + remove some trailing whitespace (my Emacs does this automatically).
...
llvm-svn: 57429
2008-10-13 02:08:34 +00:00
Chris Lattner
c52af45304
calls can be supported.
...
llvm-svn: 57428
2008-10-13 01:59:13 +00:00
Chris Lattner
e3df07e417
more notes
...
llvm-svn: 57427
2008-10-12 22:57:58 +00:00
Dale Johannesen
cc98e28f37
Change TAG_ names to DW_TAG for gcc (testsuite) compatibility.
...
llvm-svn: 57425
2008-10-12 21:23:01 +00:00
Owen Anderson
fe1f3d6e08
Fix a bug in live-in detection that caused lost-copy problems to show up.
...
llvm-svn: 57424
2008-10-12 20:39:30 +00:00
Chris Lattner
c4d68546e3
add some more notes
...
llvm-svn: 57423
2008-10-12 19:47:48 +00:00
Chris Lattner
2824ba52c3
this was to be removed after 2.4 branched.
...
llvm-svn: 57422
2008-10-12 18:57:09 +00:00
Argyrios Kyrtzidis
9103317346
More const-ness goodness.
...
llvm-svn: 57420
2008-10-12 18:45:56 +00:00
Dale Johannesen
bb5d04fc82
Remove "long" variants so these will pass on a 64-bit host.
...
llvm-svn: 57418
2008-10-12 18:40:49 +00:00
Argyrios Kyrtzidis
01622642d3
Improve the const-ness of a few methods.
...
No functionality change.
llvm-svn: 57417
2008-10-12 18:40:01 +00:00
Chris Lattner
6396952f37
add some notes
...
llvm-svn: 57416
2008-10-12 18:30:33 +00:00
Argyrios Kyrtzidis
3768ad6d58
Implement more efficient Decl <-> DeclContext conversions.
...
When the static type on the Decl side is a subclass of DeclContext the compiler will use a "inlinable" static_cast, instead of always using an out-of-line function call.
Note, though, that the isa<> check still uses an out-of-line function call.
llvm-svn: 57415
2008-10-12 16:14:48 +00:00
Anton Korobeynikov
46a9c01fff
Update size of inst correctly with segment override.
...
llvm-svn: 57414
2008-10-12 10:30:11 +00:00
Owen Anderson
de9812de43
Add special-case code to allow null-guards on calls to malloc.
...
llvm-svn: 57413
2008-10-12 08:10:46 +00:00
Owen Anderson
f2699bb57d
Make Escape Analysis work for any pointer.
...
llvm-svn: 57412
2008-10-12 07:33:29 +00:00
Owen Anderson
71cf4c440c
Add EscapeAnalysis.
...
llvm-svn: 57411
2008-10-12 06:49:21 +00:00
Dale Johannesen
ba074c0fed
Change Dwarf comments starting with AT_ to DW_AT_ to
...
match gcc. Helps with the testsuite.
llvm-svn: 57410
2008-10-12 06:20:47 +00:00
Chris Lattner
f6a3bda65e
make the -rewrite-test a bit more interesting: it now
...
wraps comments in <i> tags. Extend rewrite tokens to support
this minimal functionality.
llvm-svn: 57409
2008-10-12 06:09:52 +00:00
Owen Anderson
198966dbef
Fix crashes and infinite loops.
...
llvm-svn: 57408
2008-10-12 06:03:38 +00:00
Chris Lattner
b6aa53b7de
start implementing a token rewriter. At this point, it just reads in a file
...
and lets a client iterate over it.
llvm-svn: 57407
2008-10-12 05:44:03 +00:00
Chris Lattner
1782da2f84
Add a new -rewrite-test option, which is basically a
...
playground to experiment with some new rewriter approaches. For now
it is probably the most complex version of 'cat' ever invented.
llvm-svn: 57406
2008-10-12 05:29:20 +00:00
Chris Lattner
fc7d4a3bd2
Add a new -dump-raw-tokens option, which allows us to see raw tokens.
...
Rename -dumptokens to -dump-tokens.
llvm-svn: 57405
2008-10-12 05:03:36 +00:00
Chris Lattner
b11c3233d8
Change FormTokenWithChars to take the token kind to form, since all clients
...
were setting a kind and then forming it. This is just a minor API cleanup,
no functionality change.
llvm-svn: 57404
2008-10-12 04:51:35 +00:00
Chris Lattner
99e7d23455
When in keep whitespace mode, make sure to return block comments that are
...
unterminated.
llvm-svn: 57403
2008-10-12 04:19:49 +00:00
Chris Lattner
e01e758e11
Change SkipBlockComment and SkipBCPLComment to return true when in
...
keep comment mode, instead of returning false. This matches SkipWhitespace.
llvm-svn: 57402
2008-10-12 04:15:42 +00:00
Chris Lattner
4d96344c19
Add a new mode to the lexer which enables it to return all characters,
...
even whitespace, as tokens from the file. This is enabled with
L->SetKeepWhitespaceMode(true) on a raw lexer. In this mode, you too
can use clang as a really complex version of 'cat' with code like this:
Lexer RawLex(SourceLocation::getFileLoc(SM.getMainFileID(), 0),
PP.getLangOptions(), File.first, File.second);
RawLex.SetKeepWhitespaceMode(true);
Token RawTok;
RawLex.LexFromRawLexer(RawTok);
while (RawTok.isNot(tok::eof)) {
std::cout << PP.getSpelling(RawTok);
RawLex.LexFromRawLexer(RawTok);
}
This will emit exactly the input file, with no canonicalization or other
translation. Realistic clients actually do something with the tokens of
course :)
llvm-svn: 57401
2008-10-12 04:05:48 +00:00