#
025cea11 |
| 03-Apr-2008 |
Evan Cheng <evan.cheng@apple.com> |
Backing out 48222 temporarily.
llvm-svn: 49124
|
#
358e04a1 |
| 26-Mar-2008 |
Roman Levenstein <romix.llvm@googlemail.com> |
Use a linked data structure for the uses lists of an SDNode, just like LLVM Value/Use does and MachineRegisterInfo/MachineOperand does. This allows constant time for all uses list maintenance operat
Use a linked data structure for the uses lists of an SDNode, just like LLVM Value/Use does and MachineRegisterInfo/MachineOperand does. This allows constant time for all uses list maintenance operations.
The idea was suggested by Chris. Reviewed by Evan and Dan. Patch is tested and approved by Dan.
On normal use-cases compilation speed is not affected. On very big basic blocks there are compilation speedups in the range of 15-20% or even better.
llvm-svn: 48822
show more ...
|
#
d97eea37 |
| 21-Mar-2008 |
Duncan Sands <baldrick@free.fr> |
Introduce a new node for holding call argument flags. This is needed by the new legalize types infrastructure which wants to expand the 64 bit constants previously used to hold the flags on 32 bit m
Introduce a new node for holding call argument flags. This is needed by the new legalize types infrastructure which wants to expand the 64 bit constants previously used to hold the flags on 32 bit machines. There are two functional changes: (1) in LowerArguments, if a parameter has the zext attribute set then that is marked in the flags; before it was being ignored; (2) PPC had some bogus code for handling two word arguments when using the ELF 32 ABI, which was hard to convert because of the bogusness. As suggested by the original author (Nicolas Geoffray), I've disabled it for the moment. Tested with "make check" and the Ada ACATS testsuite.
llvm-svn: 48640
show more ...
|
#
87de65fc |
| 12-Mar-2008 |
Duncan Sands <baldrick@free.fr> |
Don't try to extract an i32 from an f64. This getCopyToParts problem was noticed by the new LegalizeTypes infrastructure. In order to avoid this kind of thing in the future I've added a check that
Don't try to extract an i32 from an f64. This getCopyToParts problem was noticed by the new LegalizeTypes infrastructure. In order to avoid this kind of thing in the future I've added a check that EXTRACT_ELEMENT is only used with integers. Once LegalizeTypes is up and running most likely BUILD_PAIR and EXTRACT_ELEMENT can be removed, in favour of using apints instead.
llvm-svn: 48294
show more ...
|
#
136a2474 |
| 12-Mar-2008 |
Evan Cheng <evan.cheng@apple.com> |
Document an implementation detail about EXTRACT_SUBREG and INSERT_SUBREG sub-register operand.
llvm-svn: 48283
|
#
d4e1d9ee |
| 10-Mar-2008 |
Evan Cheng <evan.cheng@apple.com> |
Revert 48125, 48126, and 48130 for now to unbreak some x86-64 tests.
llvm-svn: 48167
|
#
a1cc15fe |
| 10-Mar-2008 |
Dale Johannesen <dalej@apple.com> |
Use uint64_t not unsigned long long.
llvm-svn: 48154
|
#
4ba3f043 |
| 10-Mar-2008 |
Christopher Lamb <christopher.lamb@gmail.com> |
Allow insert_subreg into implicit, target-specific values. Change insert/extract subreg instructions to be able to be used in TableGen patterns. Use the above features to reimplement an x86-64 pseud
Allow insert_subreg into implicit, target-specific values. Change insert/extract subreg instructions to be able to be used in TableGen patterns. Use the above features to reimplement an x86-64 pseudo instruction as a pattern.
llvm-svn: 48130
show more ...
|
#
4e622ec8 |
| 10-Mar-2008 |
Dale Johannesen <dalej@apple.com> |
Increase ISD::ParamFlags to 64 bits. Increase the ByValSize field to 32 bits, thus enabling correct handling of ByVal structs bigger than 0x1ffff. Abstract interface a bit. Fixes gcc.c-torture/exec
Increase ISD::ParamFlags to 64 bits. Increase the ByValSize field to 32 bits, thus enabling correct handling of ByVal structs bigger than 0x1ffff. Abstract interface a bit. Fixes gcc.c-torture/execute/pr23135.c and gcc.c-torture/execute/pr28982b.c in gcc testsuite (were ICE'ing on ppc32, quietly producing wrong code on x86-32.)
llvm-svn: 48122
show more ...
|
#
95cf6615 |
| 08-Mar-2008 |
Evan Cheng <evan.cheng@apple.com> |
Implement x86 support for @llvm.prefetch. It corresponds to prefetcht{0|1|2} and prefetchnta instructions.
llvm-svn: 48042
|
#
8ee39c61 |
| 05-Mar-2008 |
Dale Johannesen <dalej@apple.com> |
Clarify that CALLSEQ_START..END may not be nested, and add some protection against creating such.
llvm-svn: 47957
|
#
567d2e5b |
| 04-Mar-2008 |
Evan Cheng <evan.cheng@apple.com> |
Rename isOperand() to isOperandOf() (and other similar methods). It always confuses me.
llvm-svn: 47872
|
#
e28886a9 |
| 28-Feb-2008 |
Duncan Sands <baldrick@free.fr> |
Document that the shuffle mask may contain undef values.
llvm-svn: 47719
|
#
5d5bc484 |
| 27-Feb-2008 |
Duncan Sands <baldrick@free.fr> |
LegalizeTypes support for INSERT_VECTOR_ELT.
llvm-svn: 47669
|
#
8c7a9228 |
| 25-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Factor the assert for indexed loads/stores out of LoadSDNode and StoreSDNode into LSBaseSDNode.
llvm-svn: 47570
|
#
451aea8e |
| 25-Feb-2008 |
Chris Lattner <sabre@nondot.org> |
add LSBaseSDNode::getOffset at Dan's request.
llvm-svn: 47558
|
#
6610e9ec |
| 25-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add a new method to SDNode/SDOperand named getValueSizeInBits that combines getValueType and MVT::getSizeInBits, since this occurrs frequently.
llvm-svn: 47552
|
#
160742ff |
| 22-Feb-2008 |
Chris Lattner <sabre@nondot.org> |
minor cleanups to LSBaseSDNode.
llvm-svn: 47469
|
#
7254826c |
| 21-Feb-2008 |
Andrew Lenharth <andrewl@lenharth.org> |
Better names as per Evan's request
llvm-svn: 47435
|
#
95528943 |
| 21-Feb-2008 |
Andrew Lenharth <andrewl@lenharth.org> |
Atomic op support. If any gcc test uses __sync builtins, it might start failing on archs that haven't implemented them yet
llvm-svn: 47430
|
#
579f0713 |
| 20-Feb-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Unbreak build with gcc 4.3: provide missed includes and silence most annoying warnings.
llvm-svn: 47367
|
#
6200c225 |
| 18-Feb-2008 |
Evan Cheng <evan.cheng@apple.com> |
- When DAG combiner is folding a bit convert into a BUILD_VECTOR, it should check if it's essentially a SCALAR_TO_VECTOR. Avoid turning (v8i16) <10, u, u, u> to <10, 0, u, u, u, u, u, u>. Instead, si
- When DAG combiner is folding a bit convert into a BUILD_VECTOR, it should check if it's essentially a SCALAR_TO_VECTOR. Avoid turning (v8i16) <10, u, u, u> to <10, 0, u, u, u, u, u, u>. Instead, simply convert it to a SCALAR_TO_VECTOR of the proper type. - X86 now normalize SCALAR_TO_VECTOR to (BIT_CONVERT (v4i32 SCALAR_TO_VECTOR)). Get rid of X86ISD::S2VEC.
llvm-svn: 47290
show more ...
|
#
9b254eed |
| 16-Feb-2008 |
Andrew Lenharth <andrewl@lenharth.org> |
llvm.memory.barrier, and impl for x86 and alpha
llvm-svn: 47204
|
#
94ea0040 |
| 14-Feb-2008 |
Nate Begeman <natebegeman@mac.com> |
Nuke dead comment
llvm-svn: 47114
|
#
282db37a |
| 12-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add a doxygen comment for SrcValueSDNode, to make its purpose clear and to clarify how it differs from MemOperandSDNode.
llvm-svn: 47015
|