Reid Spencer [Mon, 29 Jan 2007 19:07:18 +0000 (19:07 +0000)]
For PR1142:
When an unresolved definition is found, check to see if it is only unresolved
because the csretcc was upgraded to the sret param attribute. Such changes
change the function type and lead to unresolved definitions. In such cases, just
cast the function to the type expected by the CallInst. That is, cast to the
version of the function that has the sret param attribute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33623
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 29 Jan 2007 18:51:14 +0000 (18:51 +0000)]
Landing pad-less eh for PPC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33622
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 29 Jan 2007 18:45:08 +0000 (18:45 +0000)]
Update project
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33621
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 29 Jan 2007 17:55:50 +0000 (17:55 +0000)]
Remove tabs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33620
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 29 Jan 2007 17:51:02 +0000 (17:51 +0000)]
Implement use of new IntrinsicLowering interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33619
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 29 Jan 2007 17:42:06 +0000 (17:42 +0000)]
Use TargetData to obtain the correct size of the "size_t" argument for
functions like memcpy, memmove and memset. Ensure only one prototype is
used for these functions and that it matches the system definition by
using the appropriate type for the size argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33618
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 29 Jan 2007 17:39:50 +0000 (17:39 +0000)]
IntrinsicLowering now requires TargetData.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33617
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 29 Jan 2007 15:09:35 +0000 (15:09 +0000)]
Update project.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33616
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 29 Jan 2007 05:41:34 +0000 (05:41 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33615
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 29 Jan 2007 05:41:09 +0000 (05:41 +0000)]
Upgrade old csret calling convention into sret parameter attribute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33614
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 29 Jan 2007 05:40:02 +0000 (05:40 +0000)]
Update this test case to look for sret parameter attribute not csret cc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33613
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 29 Jan 2007 02:56:54 +0000 (02:56 +0000)]
Simplify names of lattice values. SGTUNE becomes SGT, for example.
Fix initializeConstant, now initializeInt. Fixes major performance
bottleneck.
X == Y || X->DominatedBy(Y) is redundant. Remove the X == Y part.
Fix crasher in makeEqual where getOrInsertNode would add a new constant,
producing an NE relationship between the two members we're trying to make
equal. This now allows us to mark more BBs as unreachable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33612
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 29 Jan 2007 02:18:13 +0000 (02:18 +0000)]
Read from the right place.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33611
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 29 Jan 2007 00:21:34 +0000 (00:21 +0000)]
Fix PR1139
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33610
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 29 Jan 2007 00:09:00 +0000 (00:09 +0000)]
Make doxygen happy
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33609
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 28 Jan 2007 22:28:00 +0000 (22:28 +0000)]
For PR1138:
Force memcpy to be the 32-bit variant. Since this is only used with
CBE and lli which both target 32-bit machines, this should be okay.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33608
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 28 Jan 2007 22:26:42 +0000 (22:26 +0000)]
Adjust a comment to reflect reality.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33607
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 28 Jan 2007 18:01:49 +0000 (18:01 +0000)]
Arguments are counting from 1. not from 0. Maybe we should change
numbering somehow? E.g. make return argument the last?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33606
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 28 Jan 2007 16:04:40 +0000 (16:04 +0000)]
More cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33605
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sun, 28 Jan 2007 15:51:15 +0000 (15:51 +0000)]
Drop CSRET from here too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33604
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sun, 28 Jan 2007 15:39:16 +0000 (15:39 +0000)]
Fix compile error "jump to case label crosses initialization".
What compiler are people using that accepts this code?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33603
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 28 Jan 2007 15:27:21 +0000 (15:27 +0000)]
Grammar fix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33602
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 28 Jan 2007 15:25:24 +0000 (15:25 +0000)]
Merge error at my side. Fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33601
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 28 Jan 2007 14:30:45 +0000 (14:30 +0000)]
Document 'inreg' & 'sret'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33600
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 28 Jan 2007 13:37:39 +0000 (13:37 +0000)]
Regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33599
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 28 Jan 2007 13:36:18 +0000 (13:36 +0000)]
Drop CSRET CC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33598
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 28 Jan 2007 13:31:35 +0000 (13:31 +0000)]
Propagate changes from my local tree. This patch includes:
1. New parameter attribute called 'inreg'. It has meaning "place this
parameter in registers, if possible". This is some generalization of
gcc's regparm(n) attribute. It's currently used only in X86-32 backend.
2. Completely rewritten CC handling/lowering code inside X86 backend.
Merged stdcall + c CCs and fastcall + fast CC.
3. Dropped CSRET CC. We cannot add struct return variant for each
target-specific CC (e.g. stdcall + csretcc and so on).
4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in
on first attribute has meaning 'This is hidden pointer to structure
return. Handle it gently'.
5. Fixed small bug in llvm-extract + add new feature to
FunctionExtraction pass, which relinks all internal-linkaged callees
from deleted function to external linkage. This will allow further
linking everything together.
NOTEs: 1. Documentation will be updated soon.
2. llvm-upgrade should be improved to translate csret => sret.
Before this, there will be some unexpected test fails.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33597
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 28 Jan 2007 08:04:14 +0000 (08:04 +0000)]
This file has been dead for a long time. Remove it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33596
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 28 Jan 2007 00:52:05 +0000 (00:52 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33595
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 28 Jan 2007 00:51:40 +0000 (00:51 +0000)]
For PR1137:
When a value is found to have the same name as another, try harder to
disambiguate when its a type plane collapse issue and when it isn't. We
traverse the type to see if it contains an integer. If it does not then
we issue the error because it can't be resulting from integer type planes
collapsing. Otherwise we just rename it, even if that's a bit of overkill.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33594
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 28 Jan 2007 00:45:28 +0000 (00:45 +0000)]
Test case for PR1137. This makes sure that we don't get erroneous
"redefinition" errors that cause the upgrade to fail.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33593
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 23:52:33 +0000 (23:52 +0000)]
provide a definition for uintptr_t
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33592
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 23:08:34 +0000 (23:08 +0000)]
Fix test/Transforms/InstCombine/2007-01-27-AndICmp.ll, a miscompilation of
Mozilla that Anton tracked down.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33591
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 23:07:12 +0000 (23:07 +0000)]
Testcase for an instcombine miscompilation reduced by Anton.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33590
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 27 Jan 2007 21:10:35 +0000 (21:10 +0000)]
Use -f option so test is repeatable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33589
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 27 Jan 2007 21:09:03 +0000 (21:09 +0000)]
Add a test case for PR411.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33588
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 27 Jan 2007 21:08:29 +0000 (21:08 +0000)]
Make this really do nothing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33587
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Sat, 27 Jan 2007 19:23:25 +0000 (19:23 +0000)]
Describe the recent changes to the bytecode format for PR761.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33586
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 27 Jan 2007 11:40:32 +0000 (11:40 +0000)]
Make d'tor out-of-line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33585
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 08:20:15 +0000 (08:20 +0000)]
Make SmallSet<whatever*, N> faster by transparently implementing it with
SmallPtrSet. Some clients will need to use SmallPtrSet directly though if
they need to iterate over the set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33584
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 08:19:03 +0000 (08:19 +0000)]
add some missing API
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33583
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 08:14:53 +0000 (08:14 +0000)]
Give SmallSet a reasonable fallback if it gets large: use an std::set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33582
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 07:59:10 +0000 (07:59 +0000)]
implement SmallPtrSet::erase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33581
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 07:52:27 +0000 (07:52 +0000)]
Fix a limitation of SmallPtrSet. Before it would assert if the smallsize
was not a power of two. Now it rounds up to the next power of two internally.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33580
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 07:24:51 +0000 (07:24 +0000)]
add some comments on the algorithm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33579
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 07:18:32 +0000 (07:18 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33578
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 07:10:46 +0000 (07:10 +0000)]
Add a new SmallSet ADT specialized for pointers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33577
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 27 Jan 2007 04:42:50 +0000 (04:42 +0000)]
Add some comments, fix an 80 cols violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33576
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 27 Jan 2007 02:56:16 +0000 (02:56 +0000)]
Return an X86ELFWriterInfo object.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33574
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 27 Jan 2007 02:55:44 +0000 (02:55 +0000)]
Use TargetELFWriterInfo class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33573
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 27 Jan 2007 02:55:04 +0000 (02:55 +0000)]
Accessor for the TargetELFWriterInfo class object.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33572
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 27 Jan 2007 02:54:30 +0000 (02:54 +0000)]
X86 implementation of the TargetELFWriterInfo class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33571
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 27 Jan 2007 02:53:50 +0000 (02:53 +0000)]
The TargetELFWriterInfo class holds target-specific information for the ELF writer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33570
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 27 Jan 2007 02:33:22 +0000 (02:33 +0000)]
New entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33569
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 27 Jan 2007 02:29:45 +0000 (02:29 +0000)]
Thumb jumptable support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33568
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 02:13:58 +0000 (02:13 +0000)]
simplify insert interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33567
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 01:14:20 +0000 (01:14 +0000)]
clean up comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33566
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 27 Jan 2007 00:23:45 +0000 (00:23 +0000)]
add an explanatory comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33565
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 27 Jan 2007 00:21:01 +0000 (00:21 +0000)]
Apparently the last commit is wrong. Reverted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33564
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 27 Jan 2007 00:16:07 +0000 (00:16 +0000)]
Remove a double negative.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33563
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 27 Jan 2007 00:07:15 +0000 (00:07 +0000)]
Thumb add / sub with carry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33562
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 27 Jan 2007 00:05:14 +0000 (00:05 +0000)]
Thumb tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33561
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 27 Jan 2007 00:04:57 +0000 (00:04 +0000)]
Merge tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33560
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Fri, 26 Jan 2007 23:24:43 +0000 (23:24 +0000)]
Some asm directives fixes for ELF.
Now we can compile llvm-gcc on arm-linux-gnueabi!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33558
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 26 Jan 2007 23:00:54 +0000 (23:00 +0000)]
Make the constant honest.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33557
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 26 Jan 2007 22:40:50 +0000 (22:40 +0000)]
Fix a spelling error
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33556
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 26 Jan 2007 22:39:48 +0000 (22:39 +0000)]
Handle multiple functions, properly mangle symbols, and fix support for
scattered relocations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33555
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 26 Jan 2007 21:48:40 +0000 (21:48 +0000)]
fit in 80 cols
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33553
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 26 Jan 2007 21:38:26 +0000 (21:38 +0000)]
rename files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33552
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 26 Jan 2007 21:33:19 +0000 (21:33 +0000)]
Represent tADDspi and tSUBspi as two-address instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33551
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 26 Jan 2007 21:22:28 +0000 (21:22 +0000)]
Change the MachineDebugInfo to MachineModuleInfo to better reflect usage
for debugging and exception handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33550
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Fri, 26 Jan 2007 21:20:45 +0000 (21:20 +0000)]
Fix Data16bitsDirective for ELF.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33549
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 26 Jan 2007 20:38:26 +0000 (20:38 +0000)]
Conditional branch being fixed up is not the last MI in the BB, there is a
unconditional branch following it. Simply invert the condition and swap
destinations if the conditional branch can reach the destination of the
unconditional branch:
beq L1
b L2
=>
bne L2
b L1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33548
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 20:31:18 +0000 (20:31 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33547
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 20:29:52 +0000 (20:29 +0000)]
Make sure that an upgraded index is also inserted into the VIndices
otherwise it gets ignored.
This fixes test/CodeGen/X86/2006-05-11-InstrSched.ll
Thanks to Evan Cheng for noticing this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33546
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 19:59:25 +0000 (19:59 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33545
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 19:58:59 +0000 (19:58 +0000)]
Ensure that gep_upgrade zext instructions we insert have unique names.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33544
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Fri, 26 Jan 2007 19:51:32 +0000 (19:51 +0000)]
If the constant pool value is a extern weak symbol, emit the weak reference.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33543
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 26 Jan 2007 19:13:16 +0000 (19:13 +0000)]
extload -> zextload
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33542
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 18:26:23 +0000 (18:26 +0000)]
Remove extraneous ; to make some versions of bison happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33541
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 26 Jan 2007 18:17:59 +0000 (18:17 +0000)]
Order createSimplifyLibCallsPass() after a set of function level passes
so that these function passes are managed by CallGraphPassManager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33540
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 26 Jan 2007 17:29:20 +0000 (17:29 +0000)]
Files missing from LABEL check in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33539
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 17:13:53 +0000 (17:13 +0000)]
Remove the SignedType class and other dead code. Improve comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33538
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 26 Jan 2007 14:34:52 +0000 (14:34 +0000)]
Make LABEL a builtin opcode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33537
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 26 Jan 2007 14:19:17 +0000 (14:19 +0000)]
Clarify some constants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33536
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 26 Jan 2007 13:34:50 +0000 (13:34 +0000)]
Work around broken binutils on alpha
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33535
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:44:14 +0000 (08:44 +0000)]
For PR1122:
Test the upgradability of nested type definitions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33534
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:25:06 +0000 (08:25 +0000)]
For PR761:
Remove "target endian/pointersize" or add "target datalayout" to make
the test parse properly or set the datalayout because defaults changes.
For PR645:
Make global names use the @ prefix.
For llvm-upgrade changes:
Fix test cases or completely remove use of llvm-upgrade for test cases
that cannot survive the new renaming or upgrade capabilities.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33533
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:19:09 +0000 (08:19 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33532
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:18:34 +0000 (08:18 +0000)]
For All These Bugs:
PR645
PR761
PR1082
PR1122
Completely rewrite llvm-upgrade. This should be its final design. Any future
changes will use this same design. The changes involve the following:
1. Make this work very much like the 1.9 AsmParser
2. Retain old upgrades dating back to release 1.2 time frame.
3. Merge in some of the upgrades between 1.9 and 2.0 (e.g. icmp/fcmp).
4. Attach a Signedness value (Signless, Unsigned, Signed) to every type,
Value, Constant, Instruction, and list of those things in the Parser.
Use these to make signedness decisions for instruction upgrades.
5. Implement unique name upgrade for function values and global values.
6. Identify rename cases that might cause problems and warn about them.
For example: renaming a global variable with external linkage.
7. Generate a 2.0 IR using VMCore. This is necessary for numerous
reasons and has the advantage that it never goes out of date.
8. Use the AsmPrinter to make the output nice.
9. Clean up error and warning messages from 1.9 form.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33531
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:11:39 +0000 (08:11 +0000)]
For PR761:
The Module::setEndianness and Module::setPointerSize methods have been
removed. Instead you can get/set the DataLayout. Adjust thise accordingly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33530
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:10:24 +0000 (08:10 +0000)]
For PR761:
Remove the Endianness and PointerSize fields from the ModuleHeader and
replace it with the DataLayout field.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33529
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:09:01 +0000 (08:09 +0000)]
For PR761:
BCReader no longer has a header that contains the endinanness and
pointer size. It's been replaced by datalayout field.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33528
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:07:57 +0000 (08:07 +0000)]
For PR761:
Remove the setEndianess and setPointerSize methods. These are now
handled via the setDataLayout method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33527
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:07:01 +0000 (08:07 +0000)]
For PR761:
Remove the setEndiannes and setPointerSize methods. These are now set
through the setDataLayout method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33526
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:05:27 +0000 (08:05 +0000)]
Regenerate for PR645 and PR761
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33525
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:04:51 +0000 (08:04 +0000)]
For PR645:
Implement separation of local and global symbols. Local symbols and types
now use % prefix. Global variables and functions now use @ prefix.
For PR761:
Replace:
target endian =
target pointersize =
With:
target datalayout =
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33524
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:02:52 +0000 (08:02 +0000)]
For PR645:
Implement new syntax for local and global symbols. Types and local
symbols use the % prefix. Global variables and functions use the @ prefix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33523
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 08:01:30 +0000 (08:01 +0000)]
For PR645:
Remove the Function::renameLocalSymbols function as it is no longer
needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33522
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 26 Jan 2007 07:51:36 +0000 (07:51 +0000)]
IntegerType is a sized DerivedType too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33521
91177308-0d34-0410-b5e6-
96231b3b80d8