Dan Gohman
32e1487604
Add a note mentioning --view-sunit-dags improvements.
...
llvm-svn: 52008
2008-06-05 15:46:36 +00:00
Dan Gohman
d3e3e2b91c
Expand the bullet item about i128 support and APInt usage in codegen.
...
llvm-svn: 52007
2008-06-05 15:43:11 +00:00
Zhou Sheng
d7b035ee2b
Add a test case for opt -instcombine bug fix in revision 52003.
...
llvm-svn: 52004
2008-06-05 14:25:11 +00:00
Zhou Sheng
eaa93efd52
If BitWidth equals to ShtAmt, the RHSKnownZero[BitWidth-ShiftAmt-1] will
...
crash the opt. Just fix this.
Test case in llvm/test/Transforms/InstCombine/2008-06-05-ashr-crash.ll
llvm-svn: 52003
2008-06-05 14:23:44 +00:00
Matthijs Kooijman
ebf00c0f65
Change the Verifier to support returning first class aggregrates.
...
Add a testcase for functions returning first class aggregrates.
llvm-svn: 52002
2008-06-05 14:00:36 +00:00
Zhou Sheng
9c9d852f08
Add a test case for APInt bug fix in r51999.
...
llvm-svn: 52000
2008-06-05 13:42:21 +00:00
Zhou Sheng
0d32cd97e1
As comments said, for negative value, the arithmetic
...
over-shift-right should return -1. So here it should be signed-extended,
when bitwidth larger than 64.
test case: llvm/test/ExecutionEngine/2008-06-05-APInt-OverAShr.ll
llvm-svn: 51999
2008-06-05 13:27:38 +00:00
Nick Lewycky
380c3aac60
Escape "$#".
...
llvm-svn: 51998
2008-06-05 12:54:44 +00:00
Matthijs Kooijman
6e1c286f53
Learn ScalarReplAggregrates how stores and loads of first class aggregrates
...
work and how to replace them into individual values. Also, when trying to
replace an aggregrate that is used by load or store with a single (large)
integer, don't crash (but don't replace the aggregrate either).
Also adds a testcase for both structs and arrays.
llvm-svn: 51997
2008-06-05 12:51:53 +00:00
Gordon Henriksen
a248df8fa0
Move this to the proper section.
...
I misread Optimizer Improvements as Other Improvements for some reason.
llvm-svn: 51996
2008-06-05 12:51:50 +00:00
Gordon Henriksen
9df03c6bb1
Adding release notes for bindings improvements.
...
llvm-svn: 51995
2008-06-05 12:48:32 +00:00
Matthijs Kooijman
775c91b2f5
Let StructRetPromotion check if all if its users are really calls or invokesn,
...
not other instructions. This fixes a crash with the added testcase.
llvm-svn: 51992
2008-06-05 08:57:20 +00:00
Matthijs Kooijman
df97b7b4a2
Let StructRetPromotion check if it's users are really calling it and not
...
passing its pointer. Fixes test with added testcase.
llvm-svn: 51991
2008-06-05 08:48:32 +00:00
Matthijs Kooijman
8e980a31d5
Use use_iterator::getOperandNo instead of CallSite::hasArgument to check if a
...
function is passed as an argument instead of called. Also do this check a bit
earlier.
llvm-svn: 51990
2008-06-05 08:34:25 +00:00
Matthijs Kooijman
6216df14cb
* Make CallSite::hasArgument const and let it take a const parameter.
...
llvm-svn: 51989
2008-06-05 08:04:58 +00:00
Chris Lattner
d83b336e41
more updates and random notes, including changes up through Week-of-Mon-20080324.
...
llvm-svn: 51988
2008-06-05 08:02:49 +00:00
Matthijs Kooijman
1fd76cd396
Update comments and documentation to reflect that GCSE and ValueNumbering are
...
deprecated by the GVN and GVNPRE passes.
llvm-svn: 51983
2008-06-05 07:55:49 +00:00
Bill Wendling
cb6cdd495d
Cast because I think I know what I'm doing. There are warnings about converting
...
from 64-bit to 32-bit.
llvm-svn: 51982
2008-06-05 07:35:27 +00:00
Matthijs Kooijman
e60059744e
Fix 80 column violations.
...
llvm-svn: 51981
2008-06-05 07:26:15 +00:00
Bill Wendling
70db1e2064
Remove unused parameter. Some clients might use -Werror when compiling and
...
cause drama.
llvm-svn: 51980
2008-06-05 07:24:08 +00:00
Chris Lattner
6559c2b294
add llvmc2 notes, stack realignment.
...
llvm-svn: 51979
2008-06-05 06:57:39 +00:00
Chris Lattner
4d5ca602ce
various status updates.
...
llvm-svn: 51978
2008-06-05 06:35:40 +00:00
Chris Lattner
ac1e6f6a33
Start adding 2.3 content.
...
llvm-svn: 51977
2008-06-05 06:25:56 +00:00
Evan Cheng
e77d6a1a2d
Fix a memcpy lowering bug. Even though the memcpy alignment is smaller than the desired alignment, the frame destination alignment may still be larger than the desired alignment. Don't change its alignment to something smaller.
...
llvm-svn: 51970
2008-06-04 23:37:54 +00:00
Owen Anderson
264b60b69d
Remove unneeded #include.
...
llvm-svn: 51955
2008-06-04 18:28:10 +00:00
Chris Lattner
d895b277ea
Fix inst_iterator example.
...
llvm-svn: 51954
2008-06-04 18:20:42 +00:00
Evan Cheng
a9cf0ff766
Oops. Should not be enabled by default.
...
llvm-svn: 51953
2008-06-04 18:09:20 +00:00
Chris Lattner
7e3db1af97
Rewrite a bunch of the CBE's inline asm code, giving it the
...
ability to handle indirect input operands. This fixes PR2407.
llvm-svn: 51952
2008-06-04 18:03:28 +00:00
Owen Anderson
503cf18547
Correctly construct live intervals for the copies we inserted into the predecessors of a block containing a PHI.
...
llvm-svn: 51950
2008-06-04 17:55:58 +00:00
Evan Cheng
9048a25037
Revert this.
...
llvm-svn: 51949
2008-06-04 17:21:44 +00:00
Matthijs Kooijman
a03f85df05
Replace two manual loops with calls to CallSite::hasArguments (no functional changes).
...
llvm-svn: 51947
2008-06-04 16:57:50 +00:00
Matthijs Kooijman
de47a7518d
Add CallSite::hasArgument to allow for seeing if a call passes a certain value as an argument quickly.
...
llvm-svn: 51946
2008-06-04 16:31:12 +00:00
Matthijs Kooijman
318e1df0e4
Add a Name parameter to two of the init methods of GetElementPointer to make the name setting more consistent.
...
llvm-svn: 51945
2008-06-04 16:14:12 +00:00
Matthijs Kooijman
1923146775
Fix example to be valid LLVM assembly.
...
llvm-svn: 51942
2008-06-04 15:46:35 +00:00
Matthijs Kooijman
2f6b694afc
Implement the two constructors in InsertValueInst and ExtractValueInst.
...
Add a Name argment to two init methods in these classes as well to make things
a bit more consistent.
llvm-svn: 51937
2008-06-04 14:40:55 +00:00
Evan Cheng
2fc7954878
Add a stack slot coloring pass. Not yet enabled.
...
llvm-svn: 51934
2008-06-04 09:18:41 +00:00
Evan Cheng
7504610c97
LowerSubregs should not clobber any analysis.
...
llvm-svn: 51933
2008-06-04 09:17:16 +00:00
Evan Cheng
9153a5316c
Move #include to right place.
...
llvm-svn: 51932
2008-06-04 09:16:33 +00:00
Evan Cheng
523ad8a09a
Register if-converter pass for -debug-pass.
...
llvm-svn: 51931
2008-06-04 09:15:51 +00:00
Evan Cheng
20d22b220a
More pass manager debugging outputs.
...
llvm-svn: 51930
2008-06-04 09:13:31 +00:00
Duncan Sands
5a6c6a92c1
Change packed struct layout so that field sizes
...
are the same as in unpacked structs, only field
positions differ. This only matters for structs
containing x86 long double or an apint; it may
cause backwards compatibility problems if someone
has bitcode containing a packed struct with a
field of one of those types.
The issue is that only 10 bytes are needed to
hold an x86 long double: the store size is 10
bytes, but the ABI size is 12 or 16 bytes (linux/
darwin) which comes from rounding the store size
up by the alignment. Because it seemed silly not
to pack an x86 long double into 10 bytes in a
packed struct, this is what was done. I now
think this was a mistake. Reserving the ABI size
for an x86 long double field even in a packed
struct makes things more uniform: the ABI size is
now always used when reserving space for a type.
This means that developers are less likely to
make mistakes. It also makes life easier for the
CBE which otherwise could not represent all LLVM
packed structs (PR2402).
Front-end people might need to adjust the way
they create LLVM structs - see following change
to llvm-gcc.
llvm-svn: 51928
2008-06-04 08:21:45 +00:00
Chris Lattner
5839247e92
Add #includes required by GCC 4.3, thanks for Zhongxing Xu
...
for reporting this.
llvm-svn: 51926
2008-06-04 04:46:14 +00:00
Bruno Cardoso Lopes
5a4d1d0fd3
Some Mips minor fixes
...
Added support for mips little endian arch => mipsel
llvm-svn: 51923
2008-06-04 01:45:25 +00:00
Owen Anderson
f9c76de0bb
We need to subtract one from this index because live ranges are open at the end.
...
llvm-svn: 51922
2008-06-04 00:38:56 +00:00
Scott Michel
38dc44ecab
Fix spellnig error
...
llvm-svn: 51917
2008-06-03 19:13:20 +00:00
Owen Anderson
3f738eb65b
Testcase for LoopIndexSplit and DomFrontier.
...
llvm-svn: 51916
2008-06-03 18:32:27 +00:00
Owen Anderson
2a072a6923
LoopIndexSplit can sometimes result in cases where a block in its own domfrontier.
...
Don't crash when we encounter one of these.
llvm-svn: 51915
2008-06-03 18:29:48 +00:00
Dale Johannesen
5b060922a3
Expand documentation of StringConstantPrefix.
...
llvm-svn: 51911
2008-06-03 18:15:03 +00:00
Dale Johannesen
2803c991a5
Prevent a crash in debug dumps.
...
llvm-svn: 51910
2008-06-03 18:14:29 +00:00
Dale Johannesen
c0cd6cd4d4
Add StringConstantPrefix to control what the
...
assembler names of string constants look like.
llvm-svn: 51909
2008-06-03 18:09:06 +00:00