Chris Lattner
33079f9c37
regenerate
...
llvm-svn: 57559
2008-10-15 06:03:48 +00:00
Chris Lattner
dc80d9772a
Eliminate the "IntType ::= INTTYPE" production, just use
...
INTTYPE everywhere.
llvm-svn: 57558
2008-10-15 06:03:37 +00:00
Chris Lattner
d91c01484c
add a note
...
llvm-svn: 57557
2008-10-15 05:53:25 +00:00
Chris Lattner
7194e8406a
add support for folding immediates into stores when they
...
are due to argument passing in calls. This is significant because
it hits all immediate arguments to calls on x86-32.
llvm-svn: 57556
2008-10-15 05:38:32 +00:00
Chris Lattner
214643296b
fold immediates into stores in simple cases, this produces diffs like
...
this:
- movl $0, %eax
- movl %eax, _yy_n_chars
+ movl $0, _yy_n_chars
llvm-svn: 57555
2008-10-15 05:30:52 +00:00
Chris Lattner
5716b8daa4
fold compare of null pointer into compare with 0.
...
llvm-svn: 57553
2008-10-15 05:18:04 +00:00
Chris Lattner
928e8e5092
Some minor cleanups:
...
1. Compute action in X86SelectSelect based on MVT instead of type.
2. Use TLI.getValueType(..) instead of MVT::getVT(..) because the former
handles pointers and the later doesn't.
3. Don't pass TLI into isTypeLegal, since it already has access to it as
an ivar.
#2 gives fast isel some minor new functionality: handling load/stores of
pointers.
llvm-svn: 57552
2008-10-15 05:07:36 +00:00
Chris Lattner
da69b5e401
Use switch on VT instead of Type* comparisons.
...
llvm-svn: 57551
2008-10-15 04:32:45 +00:00
Chris Lattner
052e062f08
Use X86FastEmitCompare for FCMP_OEQ and FCMP_UNE: it doesn't
...
change the generated code, but makes the code simpler.
llvm-svn: 57550
2008-10-15 04:29:23 +00:00
Chris Lattner
d7024dafbf
refactor compare emission out into a new X86FastEmitCompare method,
...
which makes it easy to share the compare/imm folding logic with 'setcc'.
This shaves a bunch of instructions off the common select case, which
happens a lot in llvm-gcc.
llvm-svn: 57549
2008-10-15 04:26:38 +00:00
Chris Lattner
cbea6edde5
Fold immediates into compares when possible, producing "cmp $4, %eax" instead of
...
loading 4 into a register and then doing the compare.
llvm-svn: 57548
2008-10-15 04:13:29 +00:00
Chris Lattner
905dbd0dea
more minor refactoring of X86SelectBranch, no functionality change.
...
llvm-svn: 57547
2008-10-15 04:02:26 +00:00
Chris Lattner
99d88895b6
factor buildmi calls in X86SelectBranch
...
llvm-svn: 57546
2008-10-15 03:58:05 +00:00
Chris Lattner
97e96bcca0
factor some more BuildMI's in X86SelectCmp
...
llvm-svn: 57545
2008-10-15 03:52:54 +00:00
Chris Lattner
e66c12b3f5
factor some BuildMI calls, no functionality change.
...
llvm-svn: 57544
2008-10-15 03:47:17 +00:00
Dan Gohman
2ed6f318da
Adjust whitespace in debug messages to be more consistent
...
with other debug messages.
llvm-svn: 57543
2008-10-15 02:57:38 +00:00
Evan Cheng
cb8b4e9dd4
- Add target lowering hooks that specify which setcc conditions are illegal,
...
i.e. conditions that cannot be checked with a single instruction. For example,
SETONE and SETUEQ on x86.
- Teach legalizer to implement *illegal* setcc as a and / or of a number of
legal setcc nodes. For now, only implement FP conditions. e.g. SETONE is
implemented as SETO & SETNE, SETUEQ is SETUO | SETEQ.
- Move x86 target over.
llvm-svn: 57542
2008-10-15 02:05:31 +00:00
Dan Gohman
c070ffc493
FastISel support for exception-handling constructs.
...
- Move the EH landing-pad code and adjust it so that it works
with FastISel as well as with SDISel.
- Add FastISel support for @llvm.eh.exception and
@llvm.eh.selector.
llvm-svn: 57539
2008-10-14 23:54:11 +00:00
Daniel Dunbar
e11e618cc6
Prevent assert when using '"' in names (via hexadecimal).
...
Update LangRef to mention \xx quoting in names.
llvm-svn: 57538
2008-10-14 23:51:43 +00:00
Daniel Dunbar
f3b4f45878
Change getLLVMName to use raw_ostream & PrintLLVMName.
...
- Avoids duplicated quotification code.
- Remove QuoteNameIfNeeded.
- No functionality change.
llvm-svn: 57537
2008-10-14 23:28:09 +00:00
Daniel Dunbar
2f3ec96450
Add llvm::hexdigit to StringExtras (number -> hexadecimal char)
...
llvm-svn: 57536
2008-10-14 23:26:20 +00:00
Daniel Dunbar
f78f8fdfed
Add some ReleaseNotes on clang codegen.
...
llvm-svn: 57535
2008-10-14 23:25:09 +00:00
Daniel Dunbar
9dfbc7987d
Remove Stacker.html from Xcode project.
...
llvm-svn: 57534
2008-10-14 23:23:59 +00:00
Dale Johannesen
19407daf55
Accept -march=i586, because gcc does (a synonym
...
for pentium). Fixes
gcc.target/i386/20000720-1.c
gcc.target/i386/pr26826.c
llvm-svn: 57528
2008-10-14 22:06:33 +00:00
Evan Cheng
3faedff2de
Rename LoadX to LoadExt.
...
llvm-svn: 57526
2008-10-14 21:26:46 +00:00
Jim Grosbach
d0ff59ec42
Update ARM Insn encoding to get endian-ness to match the documentation (31-0 left to right)
...
llvm-svn: 57524
2008-10-14 20:36:24 +00:00
Devang Patel
3e8ed97454
Remove dead code.
...
llvm-svn: 57522
2008-10-14 20:30:54 +00:00
Dan Gohman
9543edc4ef
Fix command-line option printing to print two spaces where needed,
...
instead of requiring all "short description" strings to begin with
two spaces. This makes these strings less mysterious, and it fixes
some cases where short description strings mistakenly did not
begin with two spaces.
llvm-svn: 57521
2008-10-14 20:25:08 +00:00
Devang Patel
4045b6a017
Document attributes changes.
...
llvm-svn: 57518
2008-10-14 20:03:43 +00:00
Nicolas Geoffray
da65ee7fd0
Add VMKit notes.
...
llvm-svn: 57517
2008-10-14 19:23:04 +00:00
Evan Cheng
591baeed7c
Combine (fcmp cc0 x, y) | (fcmp cc1 x, y) into a single fcmp when possible.
...
llvm-svn: 57515
2008-10-14 18:44:08 +00:00
Evan Cheng
778b47e6c0
- Somehow I forgot about one / une.
...
- Renumber fcmp predicates to match their icmp counterparts.
- Try swapping operands to expose more optimization opportunities.
llvm-svn: 57513
2008-10-14 18:13:38 +00:00
Evan Cheng
39a819027c
Fix indentation.
...
llvm-svn: 57508
2008-10-14 17:15:39 +00:00
Evan Cheng
91528965e7
Optimize anding of two fcmp into a single fcmp if the operands are the same. e.g. uno && ueq -> ueq
...
ord && olt -> olt
ord && ueq -> oeq
llvm-svn: 57507
2008-10-14 17:15:11 +00:00
Dan Gohman
0c6c14ef30
Mention a few methods in ConstantSDNode that were renamed.
...
llvm-svn: 57505
2008-10-14 17:06:44 +00:00
Dan Gohman
d53d4be7a8
HTML syntax fixes.
...
llvm-svn: 57503
2008-10-14 17:00:38 +00:00
Dan Gohman
75d70feb9b
Fix missing end tags and invalid HTML entity syntax.
...
llvm-svn: 57500
2008-10-14 16:51:45 +00:00
Dan Gohman
7227e51b8d
Add a missing close-tag.
...
llvm-svn: 57497
2008-10-14 16:32:04 +00:00
Dan Gohman
0c0b17ec3f
Fix a few close tags.
...
llvm-svn: 57496
2008-10-14 16:23:02 +00:00
Dan Gohman
80b968a645
Fix a typo.
...
llvm-svn: 57495
2008-10-14 16:13:59 +00:00
Dan Gohman
6ba508d258
Add a brief mention of the new free-list management code.
...
llvm-svn: 57490
2008-10-14 15:14:55 +00:00
Gabor Greif
d22d9a65f7
minor corrections, improved formatting
...
llvm-svn: 57486
2008-10-14 11:31:14 +00:00
Gabor Greif
d9aa92c0f1
typo and formatting tweaks
...
llvm-svn: 57485
2008-10-14 11:00:32 +00:00
Nuno Lopes
08a1a82acc
little optimization: reuse getPointerToGlobalIfAvailable(CGV) value in emitGlobals()
...
llvm-svn: 57484
2008-10-14 10:04:52 +00:00
Duncan Sands
8fe4eac94c
Mention the different constant folders that IRBuilder
...
can use.
llvm-svn: 57483
2008-10-14 07:06:37 +00:00
Chris Lattner
5d6b61c4c8
new testcase for PR2797
...
llvm-svn: 57481
2008-10-14 06:56:04 +00:00
Chris Lattner
62d852d53a
add some upgrading notes from Pekka.
...
llvm-svn: 57480
2008-10-14 06:37:11 +00:00
Chris Lattner
9e1db7e761
add LSR and frameaddress info.
...
llvm-svn: 57478
2008-10-14 06:02:29 +00:00
Ted Kremenek
158e2c546d
Add static analyzer notes.
...
llvm-svn: 57475
2008-10-14 05:14:21 +00:00
Chris Lattner
222e130ee3
more minor updates
...
llvm-svn: 57472
2008-10-14 00:52:49 +00:00