Dan Gohman
9c4b7d5c4f
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
dbf83835fc
Document attributes changes.
...
llvm-svn: 57518
2008-10-14 20:03:43 +00:00
Nicolas Geoffray
e5ec932baf
Add VMKit notes.
...
llvm-svn: 57517
2008-10-14 19:23:04 +00:00
Evan Cheng
d885f6e139
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
ce70752b11
- 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
c36231b95e
Fix indentation.
...
llvm-svn: 57508
2008-10-14 17:15:39 +00:00
Evan Cheng
67786cce66
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
0ccb5b4435
Mention a few methods in ConstantSDNode that were renamed.
...
llvm-svn: 57505
2008-10-14 17:06:44 +00:00
Dan Gohman
2ed2753007
HTML syntax fixes.
...
llvm-svn: 57503
2008-10-14 17:00:38 +00:00
Dan Gohman
ef9462f67c
Fix missing end tags and invalid HTML entity syntax.
...
llvm-svn: 57500
2008-10-14 16:51:45 +00:00
Dan Gohman
93bf60d4cb
Add a missing close-tag.
...
llvm-svn: 57497
2008-10-14 16:32:04 +00:00
Dan Gohman
ad888911c0
Fix a few close tags.
...
llvm-svn: 57496
2008-10-14 16:23:02 +00:00
Dan Gohman
f4a169f201
Fix a typo.
...
llvm-svn: 57495
2008-10-14 16:13:59 +00:00
Dan Gohman
765edbc4e4
Add a brief mention of the new free-list management code.
...
llvm-svn: 57490
2008-10-14 15:14:55 +00:00
Gabor Greif
20564a05b9
minor corrections, improved formatting
...
llvm-svn: 57486
2008-10-14 11:31:14 +00:00
Gabor Greif
355f81cd16
typo and formatting tweaks
...
llvm-svn: 57485
2008-10-14 11:00:32 +00:00
Nuno Lopes
a67f06b9c7
little optimization: reuse getPointerToGlobalIfAvailable(CGV) value in emitGlobals()
...
llvm-svn: 57484
2008-10-14 10:04:52 +00:00
Duncan Sands
6e9c3cbe30
Mention the different constant folders that IRBuilder
...
can use.
llvm-svn: 57483
2008-10-14 07:06:37 +00:00
Chris Lattner
acc2eb484b
new testcase for PR2797
...
llvm-svn: 57481
2008-10-14 06:56:04 +00:00
Chris Lattner
6f21daaec1
add some upgrading notes from Pekka.
...
llvm-svn: 57480
2008-10-14 06:37:11 +00:00
Chris Lattner
0597229d3e
add LSR and frameaddress info.
...
llvm-svn: 57478
2008-10-14 06:02:29 +00:00
Ted Kremenek
3db01846db
Add static analyzer notes.
...
llvm-svn: 57475
2008-10-14 05:14:21 +00:00
Chris Lattner
bcffa5af89
more minor updates
...
llvm-svn: 57472
2008-10-14 00:52:49 +00:00
Chris Lattner
934e2d4939
more changes.
...
llvm-svn: 57470
2008-10-13 22:06:31 +00:00
Chris Lattner
25879d7d82
optimizer and codegen
...
llvm-svn: 57468
2008-10-13 21:50:36 +00:00
Chris Lattner
0327f0bc91
more updates.
...
llvm-svn: 57466
2008-10-13 20:59:32 +00:00
Dan Gohman
56b6885104
When doing the very-late shift-and address-mode optimization,
...
create a new DAG node to represent the new shift to keep the
DAG consistent, even though it'll almost always be folded into
the address.
If a user of the resulting address has multiple uses, the
nodes may get revisited by a later MatchAddress call, in which
case DAG inconsistencies do matter.
This fixes PR2849.
llvm-svn: 57465
2008-10-13 20:52:04 +00:00
Chris Lattner
591ef273e3
describe major new features and llvm-gcc features.
...
llvm-svn: 57463
2008-10-13 20:47:20 +00:00
Duncan Sands
1db4fbdfbe
Don't barf on 32 bit platforms if llvm-gcc is
...
not built with 64 bit support. Since this test
passes without -m64 on x86-32-linux, just remove
the -m64.
llvm-svn: 57462
2008-10-13 19:56:36 +00:00
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
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
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
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
Chris Lattner
6396952f37
add some notes
...
llvm-svn: 57416
2008-10-12 18:30:33 +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
Owen Anderson
198966dbef
Fix crashes and infinite loops.
...
llvm-svn: 57408
2008-10-12 06:03:38 +00:00
Owen Anderson
36b48de43c
Duncan convinced me that it's not possible to transform control-based escapes into
...
data-based ones. Just be conservative when analyzing control-based escapes.
llvm-svn: 57400
2008-10-12 03:59:45 +00:00
Chris Lattner
c46186e890
fix typo
...
llvm-svn: 57388
2008-10-11 23:59:03 +00:00
Chris Lattner
da435910e8
Fix PR2697 by rewriting the '(X / pos) op neg' logic. This also changes
...
a couple other cases for clarity, but shouldn't affect correctness.
Patch by Eli Friedman!
llvm-svn: 57387
2008-10-11 22:55:00 +00:00
Chris Lattner
f94e1bc53a
update win32 project file, patch provided by OvermindDL1 on llvmdev.
...
llvm-svn: 57386
2008-10-11 22:14:59 +00:00
Chris Lattner
2753955fc0
Change CALLSEQ_BEGIN and CALLSEQ_END to take TargetConstant's as
...
parameters instead of raw Constants. This prevents the constants from
being selected by the isel pass, fixing PR2735.
llvm-svn: 57385
2008-10-11 22:08:30 +00:00
Chris Lattner
d57b7603f9
rearrange some code.
...
llvm-svn: 57384
2008-10-11 22:07:19 +00:00
Chris Lattner
bea568f612
random cleanup
...
llvm-svn: 57383
2008-10-11 22:06:50 +00:00
Daniel Dunbar
a4a0813fb4
Add API changes which affected me to release notes:
...
- DbgStopPointInst
- Attributes (needs filling in)
llvm-svn: 57382
2008-10-11 21:26:56 +00:00
Duncan Sands
23ee981e8e
Fix comment typo.
...
llvm-svn: 57381
2008-10-11 19:34:24 +00:00
Anton Korobeynikov
2589777f3f
Add ability to override segment (mostly for code emitter purposes).
...
llvm-svn: 57380
2008-10-11 19:09:15 +00:00
Daniel Dunbar
2a5754521d
Add GCC 4.1.2 from Debian to known bad GCC list.
...
llvm-svn: 57379
2008-10-11 18:40:33 +00:00
Anton Korobeynikov
28f08aa041
Note EH stuff for x86-64/linux
...
llvm-svn: 57378
2008-10-11 18:27:16 +00:00
Anton Korobeynikov
e57220a5d1
We do support PIC on x86-64/linux
...
llvm-svn: 57377
2008-10-11 18:27:00 +00:00
Chris Lattner
d8b33e0af6
Strip out 2.3 info, make space for 2.4 info. I'd appreciate it if
...
various component owners could look through and update their areas
in the known-problems section.
llvm-svn: 57376
2008-10-11 18:18:28 +00:00
Daniel Dunbar
d94184395f
Unbreak DbgStopPointInst::getFileName().
...
llvm-svn: 57373
2008-10-11 06:40:56 +00:00
Chris Lattner
fb1f4a1329
simplify comparison
...
llvm-svn: 57371
2008-10-11 00:08:02 +00:00
Dale Johannesen
05b54c2af4
Fix SSE4.1 roundss, roundsd. While the instructions have
...
the same pattern as roundpd/roundps, the Intel compiler
builtins do not: rounds* has an extra operand. Fixes
gcc.target/i386/sse4_1-rounds[sd]-[1234].c
llvm-svn: 57370
2008-10-10 23:51:03 +00:00
Devang Patel
647a1e532b
Check loop exit predicate properly while eliminating one iteration loop.
...
This patch fixes PR 2869
llvm-svn: 57369
2008-10-10 22:02:57 +00:00
Anton Korobeynikov
58deb69040
Fix a thinko and unbreak sparc default CC
...
llvm-svn: 57368
2008-10-10 21:47:37 +00:00
Dale Johannesen
4f2791617e
Remove some overzealous checks that were rejecting
...
valid comments in inline assembly.
gcc.target/i386/20011009-1.c
llvm-svn: 57365
2008-10-10 21:04:42 +00:00
Anton Korobeynikov
f8a4a0e959
Extend set of return registers on sparc until someone will implement MRV support there. At least, this will allow libgcc compile, however we are not ABI-compatible with stuff compiled with native gcc.
...
llvm-svn: 57364
2008-10-10 20:30:14 +00:00
Anton Korobeynikov
b80b485264
Ignore extra 'r' modifier for now
...
llvm-svn: 57363
2008-10-10 20:29:50 +00:00
Anton Korobeynikov
76baad1ffc
Use expand for smul_lohi for now
...
llvm-svn: 57362
2008-10-10 20:29:31 +00:00
Anton Korobeynikov
a0cce200c5
Add testcase for 'r' inline asm operand
...
llvm-svn: 57361
2008-10-10 20:28:59 +00:00
Anton Korobeynikov
b36d3b2bb7
This does not fail anymore
...
llvm-svn: 57360
2008-10-10 20:28:32 +00:00
Anton Korobeynikov
281cf247a5
Add rudimentary support for 'r' register operand
...
llvm-svn: 57359
2008-10-10 20:28:10 +00:00
Anton Korobeynikov
b8736566c2
Cleanup
...
llvm-svn: 57358
2008-10-10 20:27:31 +00:00
Oscar Fuentes
45fde6fc4f
CMake: updated lib/Analysis/CMakeLists.txt.
...
llvm-svn: 57357
2008-10-10 18:51:36 +00:00
Mon P Wang
297364cd3b
Revert r57340 move guard mutex in getPointerToFunction as this can cause
...
deadlock issues with java
llvm-svn: 57356
2008-10-10 18:07:10 +00:00
Devang Patel
796bc4e6ce
Fix build failure.
...
Patch by Erick Tryzelaar.
llvm-svn: 57355
2008-10-10 17:57:50 +00:00
Nuno Lopes
e3127f3f80
fix memleak by cleaning the global sets on pass exit
...
llvm-svn: 57353
2008-10-10 16:25:50 +00:00
Anton Korobeynikov
e6b3093b18
Add sparc test for memory operand used in inline asm
...
llvm-svn: 57348
2008-10-10 10:15:33 +00:00
Anton Korobeynikov
b3692f7d38
This is not failing anymore
...
llvm-svn: 57347
2008-10-10 10:15:18 +00:00
Anton Korobeynikov
3db2173021
Add rudimentary asmprinter support for printing inline asm operands for sparc.
...
llvm-svn: 57346
2008-10-10 10:15:03 +00:00
Anton Korobeynikov
9aaaa4035e
Add dummy 'm' inline asm constraint handler for Sparc. I'm not sure, whether it is correct, however :)
...
llvm-svn: 57345
2008-10-10 10:14:47 +00:00
Anton Korobeynikov
1f9487b916
Cleanup
...
llvm-svn: 57344
2008-10-10 10:14:15 +00:00
Owen Anderson
c258255a61
Fix copy-and-paste-o.
...
llvm-svn: 57343
2008-10-10 08:53:07 +00:00
Owen Anderson
45d41c6741
Add a basic intra-procedural escape analysis. This hasn't be extensively tested yet, but feedback is welcome.
...
llvm-svn: 57342
2008-10-10 08:36:25 +00:00
Mon P Wang
6e5eccf86b
Moved guard mutex upwards to guard materializing a function
...
in getPointerToFunction
llvm-svn: 57340
2008-10-10 01:47:42 +00:00
Mon P Wang
dfcc1ff8f8
Added missing print functions that take a raw_ostream
...
llvm-svn: 57339
2008-10-10 01:43:55 +00:00
Mon P Wang
58ca7bdbf0
Fixed definition of llvm_anyptr_ty
...
llvm-svn: 57338
2008-10-10 01:41:18 +00:00
Dale Johannesen
62a2e5cb2f
Generated files for previous checkin.
...
llvm-svn: 57331
2008-10-09 23:01:34 +00:00
Dale Johannesen
76b2391581
A file missed from previous checkin.
...
llvm-svn: 57330
2008-10-09 23:01:07 +00:00
Dale Johannesen
4f0bd68cfe
Add a "loses information" return value to APFloat::convert
...
and APFloat::convertToInteger. Restore return value to
IEEE754. Adjust all users accordingly.
llvm-svn: 57329
2008-10-09 23:00:39 +00:00
Dale Johannesen
54306fe499
Rename APFloat::convertToAPInt to bitcastToAPInt to
...
make it clearer what the function does. No functional
change.
llvm-svn: 57325
2008-10-09 18:53:47 +00:00
Nick Lewycky
03c5fa18f1
Don't drop alignment on globals when cloning.
...
llvm-svn: 57320
2008-10-09 06:27:14 +00:00
Chris Lattner
1a84f86271
get CodeGen/Alpha/mul128.ll to work.
...
llvm-svn: 57318
2008-10-09 04:50:56 +00:00
Dale Johannesen
d796164e89
Align EH tables before label is emitted, not after,
...
thus aligning the label.
llvm-svn: 57310
2008-10-08 21:50:21 +00:00
Dale Johannesen
66e08292aa
(re)Put const weak strings in appropriate section on Darwin.
...
g++dg/abi/key2.C
llvm-svn: 57309
2008-10-08 21:49:47 +00:00
Nuno Lopes
06c67f88d7
dont specialize weak functions and the like
...
llvm-svn: 57305
2008-10-08 18:45:59 +00:00
Jim Grosbach
d83529e8c4
Comment to be explicit that the enumeration values for CondCodes matter.
...
llvm-svn: 57295
2008-10-08 16:24:35 +00:00
Duncan Sands
32052e8272
Use template to distinguish between function variants.
...
GCC 4.4.0 gives an error on the "int" declaration for example
saying that it has already been declared (using the "short"
one). Using templates here allow the compiler to distinguish
between the function to choose.
Also, "llvm/Support/DataTypes.h" was not included, leading to
error messages about not knowing "uint32_t" for example.
Patch by Samuel Tardieu.
llvm-svn: 57292
2008-10-08 07:44:52 +00:00
Duncan Sands
26ff6f9c54
Add <cstdio> include where needed by gcc-4.4.
...
Patch by Samuel Tardieu.
llvm-svn: 57291
2008-10-08 07:23:46 +00:00
Chris Lattner
9b1300ba55
regenerate
...
llvm-svn: 57290
2008-10-08 06:44:45 +00:00
Chris Lattner
152acb5325
Add missing semicolumns in parser rules, those missing semicolumns
...
are required to compile with the latest Bison.
Patch by Samuel Tardieu!
llvm-svn: 57289
2008-10-08 06:44:36 +00:00
Chris Lattner
42d5785dbd
Add parentheses to avoid warnings in GCC 4.4.0,
...
patch by Samuel Tardieu!
llvm-svn: 57288
2008-10-08 06:42:28 +00:00
Chris Lattner
6cbe8e99b3
fix typo
...
llvm-svn: 57287
2008-10-08 06:26:11 +00:00
Owen Anderson
bfe12ee668
Fix the case where an instruction is not properly marked as using all registers that alias its inputs.
...
llvm-svn: 57286
2008-10-08 04:30:51 +00:00
Dan Gohman
60ad173dfe
Remove -disable-fast-isel. Use cl::boolOrDefault with -fast-isel
...
instead.
So now: -fast-isel or -fast-isel=true enable fast-isel, and
-fast-isel=false disables it. Fast-isel is also on by default
with -fast, and off by default otherwise.
llvm-svn: 57270
2008-10-07 23:00:56 +00:00
Eric Christopher
9fedacbede
Fix disagreement about where the attributes are
...
~0 != ~0U.
llvm-svn: 57268
2008-10-07 22:33:44 +00:00
Tanya Lattner
a432b2efcf
Fix configure issue where configure
...
turned "obj-c++" into "obj" in the langs line.
Update configure script.
llvm-svn: 57267
2008-10-07 22:21:03 +00:00
Dan Gohman
b3ba449cfb
Add MBB successors and physreg Uses in the same order that
...
SDISel typically adds them in. This makes it a little easier
to compare FastISel output with SDISel output.
llvm-svn: 57266
2008-10-07 22:10:33 +00:00
Dan Gohman
c1d47c56f9
Avoid emitting redundant materializations of integer constants
...
for things like null pointers, which at this level aren't
different from regular integer constants.
llvm-svn: 57265
2008-10-07 22:03:27 +00:00
Dan Gohman
d3917157d5
Instead of emitting an implicit use for the super-register of
...
X86::CL that was used, emit an EXTRACT_SUBREG from the CL
super-register to CL. This more precisely describes how the
CL register is being used.
llvm-svn: 57264
2008-10-07 21:50:36 +00:00
Jim Grosbach
f311fe142c
Unconditional branch instruction encoding fix. Needs to use ABI, not AXI, to get the proper opcode bits.
...
llvm-svn: 57262
2008-10-07 21:08:09 +00:00
Jim Grosbach
b53acd8caa
need ARM.h for ARMCC definition
...
llvm-svn: 57261
2008-10-07 21:01:51 +00:00
Dan Gohman
b8118fd432
Add a testcase for i256 add. i256 isn't fully supported in
...
codegen right now, but add and subtract work.
llvm-svn: 57260
2008-10-07 20:39:12 +00:00
Owen Anderson
1d338fc6a4
Add an option to enable StrongPHIElimination, for ease of testing.
...
llvm-svn: 57259
2008-10-07 20:22:28 +00:00
Jim Grosbach
c084e84028
Encode the conditional execution predicate when JITing.
...
llvm-svn: 57258
2008-10-07 19:05:35 +00:00
Dale Johannesen
422ef88f31
Model hardwired inputs & outputs of x86 8-bit divides correctly.
...
Fixes local RA miscompilation of gcc.c-torture/execute/20020904-1.c -O0.
llvm-svn: 57257
2008-10-07 18:54:28 +00:00
Andrew Lenharth
21dca9cbb1
Use Dan's supperior check
...
llvm-svn: 57255
2008-10-07 18:27:23 +00:00
Andrew Lenharth
5aa1cc4065
Correctly set attributes when removing args during cloning. Fixes PR2765
...
llvm-svn: 57254
2008-10-07 18:08:38 +00:00
Devang Patel
022562369f
Improve function definition, call and invoke instruction docs.
...
llvm-svn: 57253
2008-10-07 17:48:33 +00:00
Jim Grosbach
2fb5c3938b
Clarify naming and correct conditional so that CMP and CMN instructions get the Rn operand encoded properly
...
llvm-svn: 57252
2008-10-07 17:42:09 +00:00
Jim Grosbach
1d54d4f375
Fix Opcode values of CMP and CMN
...
llvm-svn: 57251
2008-10-07 17:40:46 +00:00
Andrew Lenharth
83f5f40b6a
128 mul test, xfailed
...
llvm-svn: 57250
2008-10-07 17:13:32 +00:00
Andrew Lenharth
d69bdaef64
No need for |=
...
llvm-svn: 57249
2008-10-07 17:11:29 +00:00
Andrew Lenharth
6d409f08be
Use ADDC if it is valid at any smaller size. Do it right this time
...
llvm-svn: 57248
2008-10-07 17:09:16 +00:00
Andrew Lenharth
6606f17e50
Use ADDC if it is valid at any smaller size. fixes test/Codegen/Generic/i128-addsub.ll on x86
...
llvm-svn: 57247
2008-10-07 17:03:15 +00:00
Anders Carlsson
1699ad9030
Certain patterns involving the "movss" instruction were marked as requiring SSE2, when in reality movss is an SSE1 instruction.
...
llvm-svn: 57246
2008-10-07 16:14:11 +00:00
Nuno Lopes
9a04782fda
add support for running the test suite with valgrind. to run it just type 'make VG=1', as in clang
...
beware of the 42000 leaks reported by valgrind in the Constant.cpp + Type.cpp files. it needs fixing IMHO
llvm-svn: 57245
2008-10-07 14:48:14 +00:00
Andrew Lenharth
3a9be150be
Expand arith on machines without carry flags
...
llvm-svn: 57243
2008-10-07 14:15:42 +00:00
Matthijs Kooijman
eefa7dfcd3
Add two forgotten </i>'s.
...
llvm-svn: 57239
2008-10-07 10:03:45 +00:00
Gabor Greif
66f30f81a8
fix filetype suffix
...
llvm-svn: 57237
2008-10-07 06:41:02 +00:00
Tanya Lattner
355c4019e2
Advance version to 2.5
...
llvm-svn: 57233
2008-10-07 04:35:08 +00:00
Chris Lattner
315e3c0e64
no need to write the output to the disk
...
llvm-svn: 57232
2008-10-07 04:06:55 +00:00
Andrew Lenharth
3b893a905e
Add test case for ADDC ADDE expansion
...
llvm-svn: 57228
2008-10-07 02:30:13 +00:00
Andrew Lenharth
64861a7181
Note that ADDC and company don't actually expand yet (missing in legalize
...
llvm-svn: 57226
2008-10-07 02:10:26 +00:00
Dale Johannesen
7221af384d
Mark negative-zero-to-int conversion as Inexact,
...
since -0.0 can't be represented as an int.
This prevents llvm from reducing -0.0 to a
load-and-convert of int 0. Fixes
ieee.exp/mzero[2356].c in gcc testsuite.
llvm-svn: 57224
2008-10-07 00:40:01 +00:00
Dan Gohman
bef9b0bef0
Correctly handle calls with no return values. This fixes
...
2006-01-23-UnionInit on x86-64 when inlining is not enabled.
llvm-svn: 57223
2008-10-07 00:12:37 +00:00
Devang Patel
40aafce00d
Fix typo, fix PR 2865.
...
llvm-svn: 57221
2008-10-06 23:22:54 +00:00
Dale Johannesen
6c6729f3a8
Be more precise about which conversions of NaNs
...
are Inexact. (These are not Inexact as defined
by IEEE754, but that seems like a reasonable way
to abstract what happens: information is lost.)
llvm-svn: 57218
2008-10-06 22:59:10 +00:00
Devang Patel
3cda64abd4
Set UNIVERSAL_ARCH value.
...
Fixes build failure when target is i386.
llvm-svn: 57211
2008-10-06 21:24:48 +00:00
Evan Cheng
94d14f2d45
Fix PR2850 and PR2863. Only generate movddup for 128-bit SSE vector shuffles.
...
llvm-svn: 57210
2008-10-06 21:13:08 +00:00
Dale Johannesen
6271b0a83c
Temporarily revert functionality change from my previous patch;
...
it is too aggressive.
llvm-svn: 57203
2008-10-06 20:43:48 +00:00
Devang Patel
c3e3ca9a45
Remove interfaces implemented by dead pass from the list of available passes.
...
Patch By Matthijs Kooijman.
llvm-svn: 57202
2008-10-06 20:36:36 +00:00
Evan Cheng
ca2271af10
Cosmetic.
...
llvm-svn: 57200
2008-10-06 20:33:02 +00:00
Devang Patel
7e9b05ede5
Update function attributes docs.
...
llvm-svn: 57197
2008-10-06 18:50:38 +00:00
Evan Cheng
dd082cf676
This is an objective-c test, not an objective-c++ one.
...
llvm-svn: 57193
2008-10-06 18:42:48 +00:00
Dale Johannesen
fff2995532
Mark shortening NaN conversions as Inexact. PR 2856.
...
Improve description of unsupported formats.
llvm-svn: 57185
2008-10-06 18:22:29 +00:00
Devang Patel
c0f3b52e65
It is possible that all functions in one module are not being
...
optimized for size. Set OptForSize for each function separately.
llvm-svn: 57182
2008-10-06 18:03:39 +00:00
Dan Gohman
dfe979bcb0
Don't dereference the end() iterator. Thanks to
...
ENABLE_EXPENSIVE_CHECKS for finding this.
llvm-svn: 57181
2008-10-06 18:00:07 +00:00
Devang Patel
ab379c905b
Remove unncessary isDeclaration() checks.
...
llvm-svn: 57179
2008-10-06 17:30:07 +00:00
Matthijs Kooijman
cbe5e16eb5
Allow scalarrepl to treat an all-zero GEP just as bitcast.
...
This includes not marking a GEP involving a vector as unsafe, but only when it
has all zero indices. This allows scalarrepl to work in a few more cases.
llvm-svn: 57177
2008-10-06 16:23:31 +00:00
Duncan Sands
bae7a517cc
Actually run Obj-C++ tests if llvm-gcc supports.
...
Before there were two problems: (1) configure
turned "obj-c++" into "obj" in the langs line;
(2) the dejagnu library called it objc++ not
obj-c++.
Now the problem is that some of these tests don't
pass!
llvm-svn: 57167
2008-10-06 10:31:21 +00:00
Duncan Sands
2a1d8bace1
Clarify the relationship between byval and readonly/
...
readnone. Make clearer that readnone functions do not
dereference pointer arguments. Do not use the highly
ambiguous "side-effects" in the readonly description
(since such functions can have control flow side-effects,
such as throwing an exception, or looping for ever).
llvm-svn: 57166
2008-10-06 08:14:18 +00:00
Chris Lattner
7875876e46
reorder #include order, patch by Kenneth Boyd!
...
llvm-svn: 57148
2008-10-06 03:54:25 +00:00
Chris Lattner
0c41861f39
Add #include to get alloca, patch by Kenneth Boyd!
...
llvm-svn: 57147
2008-10-06 03:53:16 +00:00
Chris Lattner
758ce7260d
Fix shift overflow bug that would occur when a field was a full 32-bits
...
in tblgen. This is PR2827, thanks to Waldemar Knorr for tracking this
down.
llvm-svn: 57124
2008-10-05 18:31:58 +00:00
Chris Lattner
851e72cd22
fix an incorrect and extremely confusing error message
...
llvm-svn: 57123
2008-10-05 18:24:03 +00:00
Chris Lattner
4744ed5f94
make the autoupgrade code for ret attributes dramatically simpler
...
and actually work. We can now read the llvm 2.3 bc file from PR2849
llvm-svn: 57122
2008-10-05 18:22:09 +00:00
Chris Lattner
0625c28135
A word got optimized out, thanks to Duncan for pointing this out
...
llvm-svn: 57116
2008-10-05 17:14:59 +00:00
Nuno Lopes
0ea0fce8fe
regenerate
...
llvm-svn: 57114
2008-10-05 16:49:34 +00:00
Nuno Lopes
33b90e3f59
clean ArgTypeListI production: free the PATypeHolder
...
llvm-svn: 57113
2008-10-05 16:49:03 +00:00
Anton Korobeynikov
37e560cde1
Emit type-correct constant null. Also fix a typo.
...
Patch by Robert G. Jakabosky!
llvm-svn: 57110
2008-10-05 15:07:06 +00:00
Anton Korobeynikov
d2aded08ac
Fix weird think-o and unbreak build on all gcc-3.4.x-based platforms (e.g. mingw)
...
llvm-svn: 57106
2008-10-05 08:53:29 +00:00
Chris Lattner
f9325e5f67
this case is matched now.
...
llvm-svn: 57096
2008-10-05 02:16:12 +00:00
Chris Lattner
917a6c1343
rewrite bswap matching to be more general, allowing arbitrary
...
shifting and masking inside a bswap expr. This allows it to handle
the cases from PR2842, which involve the intermediate 'or'
expressions being shifted, not just the input value.
llvm-svn: 57095
2008-10-05 02:13:19 +00:00
Steve Naroff
ba2219c473
Update VC++ project file
...
llvm-svn: 57091
2008-10-05 01:04:07 +00:00
Chris Lattner
ca91f265c4
fix a bug where the bswap matcher could match a case involving
...
ashr. It should only apply to lshr.
llvm-svn: 57089
2008-10-05 00:50:57 +00:00
Chris Lattner
2416896b3c
wrap some long lines and expand i32 mul's to libcalls, inspired by a
...
patch by Mikael Lepisto!
llvm-svn: 57077
2008-10-04 21:27:46 +00:00
Oscar Fuentes
b5abd78ab5
CMake: Reflected changes on source file structure. New plugin support
...
for llvmc2 incomplete.
llvm-svn: 57076
2008-10-04 21:18:50 +00:00
Dan Gohman
cc3132e5ed
Update the documentation for first-class aggregates changes,
...
and remove getresult and references thereto.
llvm-svn: 57064
2008-10-04 19:00:07 +00:00
Chris Lattner
d552826d6e
add a note about inline asm
...
llvm-svn: 57062
2008-10-04 18:36:02 +00:00
Chris Lattner
d2597d71d4
improve description of param/ret attrs
...
llvm-svn: 57061
2008-10-04 18:33:34 +00:00
Chris Lattner
fbf60a4f72
improve descriptions of function attrs
...
llvm-svn: 57060
2008-10-04 18:23:17 +00:00
Chris Lattner
cbc4d2a164
notes are gone.
...
llvm-svn: 57059
2008-10-04 18:10:21 +00:00
Chris Lattner
780a2ecd4f
comment cleanups
...
llvm-svn: 57058
2008-10-04 18:08:00 +00:00
Chris Lattner
7e438ede4d
Make GenLibDeps.pl more robust in the face of broken piping problems.
...
Patch by Kenneth Boyd!
llvm-svn: 57057
2008-10-04 18:03:46 +00:00
Duncan Sands
1d35e9aebe
Ignore loads from and stores to local memory (i.e. allocas)
...
when deciding whether to mark a function readnone/readonly.
Since the pass is currently run before SROA, this may be
quite helpful. Requested by Chris on IRC.
llvm-svn: 57050
2008-10-04 13:24:24 +00:00
Nick Lewycky
fc9bc3cf23
Allow the construction of SCEVs with SCEVCouldNotCompute operands, by
...
implementing folding. Fixes PR2857.
llvm-svn: 57049
2008-10-04 11:19:07 +00:00
Anton Korobeynikov
b52ef06c8c
Revert r56675 - it breaks unwinding runtime everywhere.
...
llvm-svn: 57048
2008-10-04 11:09:36 +00:00
Argyrios Kyrtzidis
a6f9bb7905
Add implementations for sys::Memory::setWritable and sys::Memory::setExecutable on Win32 platform.
...
llvm-svn: 57047
2008-10-04 08:15:32 +00:00
Argyrios Kyrtzidis
68fec886ed
Fix compilation error on MSVC.
...
llvm-svn: 57046
2008-10-04 08:11:49 +00:00