Commit Graph

29275 Commits

Author SHA1 Message Date
Jim Laskey 73e79b5a43 Make the constant honest.
llvm-svn: 33557
2007-01-26 23:00:54 +00:00
Nate Begeman debcb5530c Fix a spelling error
llvm-svn: 33556
2007-01-26 22:40:50 +00:00
Nate Begeman f209495e93 Handle multiple functions, properly mangle symbols, and fix support for
scattered relocations.

llvm-svn: 33555
2007-01-26 22:39:48 +00:00
Chris Lattner 1ac3256c22 fit in 80 cols
llvm-svn: 33553
2007-01-26 21:48:40 +00:00
Jim Laskey 5a1df9748b rename files
llvm-svn: 33552
2007-01-26 21:38:26 +00:00
Evan Cheng add7f164a1 Represent tADDspi and tSUBspi as two-address instructions.
llvm-svn: 33551
2007-01-26 21:33:19 +00:00
Jim Laskey c56315c2b5 Change the MachineDebugInfo to MachineModuleInfo to better reflect usage
for debugging and exception handling.

llvm-svn: 33550
2007-01-26 21:22:28 +00:00
Lauro Ramos Venancio d45cd5eb81 Fix Data16bitsDirective for ELF.
llvm-svn: 33549
2007-01-26 21:20:45 +00:00
Evan Cheng 3c9dc6bd46 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

llvm-svn: 33548
2007-01-26 20:38:26 +00:00
Reid Spencer 9f4cdd5d18 Regenerate.
llvm-svn: 33547
2007-01-26 20:31:18 +00:00
Reid Spencer 62b741dc4c 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.

llvm-svn: 33546
2007-01-26 20:29:52 +00:00
Reid Spencer 41210fb2dc Regenerate.
llvm-svn: 33545
2007-01-26 19:59:25 +00:00
Reid Spencer 0bad131b17 Ensure that gep_upgrade zext instructions we insert have unique names.
llvm-svn: 33544
2007-01-26 19:58:59 +00:00
Lauro Ramos Venancio aa26c1ab9d If the constant pool value is a extern weak symbol, emit the weak reference.
llvm-svn: 33543
2007-01-26 19:51:32 +00:00
Evan Cheng d02d75c295 extload -> zextload
llvm-svn: 33542
2007-01-26 19:13:16 +00:00
Reid Spencer aecf935dc9 Remove extraneous ; to make some versions of bison happy.
llvm-svn: 33541
2007-01-26 18:26:23 +00:00
Devang Patel a426fcd681 Order createSimplifyLibCallsPass() after a set of function level passes
so that these function passes are managed by CallGraphPassManager.

llvm-svn: 33540
2007-01-26 18:17:59 +00:00
Jim Laskey 214c582002 Files missing from LABEL check in.
llvm-svn: 33539
2007-01-26 17:29:20 +00:00
Reid Spencer 697ba1a507 Remove the SignedType class and other dead code. Improve comments.
llvm-svn: 33538
2007-01-26 17:13:53 +00:00
Jim Laskey f9e5445ed4 Make LABEL a builtin opcode.
llvm-svn: 33537
2007-01-26 14:34:52 +00:00
Jim Laskey f773e14547 Clarify some constants.
llvm-svn: 33536
2007-01-26 14:19:17 +00:00
Andrew Lenharth 0ad67b0e43 Work around broken binutils on alpha
llvm-svn: 33535
2007-01-26 13:34:50 +00:00
Reid Spencer 23f1272d37 For PR1122:
Test the upgradability of nested type definitions.

llvm-svn: 33534
2007-01-26 08:44:14 +00:00
Reid Spencer ce380568b5 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.

llvm-svn: 33533
2007-01-26 08:25:06 +00:00
Reid Spencer 4f95f1ab08 Regenerate.
llvm-svn: 33532
2007-01-26 08:19:09 +00:00
Reid Spencer 00a7c7f85a 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.

llvm-svn: 33531
2007-01-26 08:18:34 +00:00
Reid Spencer 3ac38e99b9 For PR761:
The Module::setEndianness and Module::setPointerSize methods have been
removed. Instead you can get/set the DataLayout. Adjust thise accordingly.

llvm-svn: 33530
2007-01-26 08:11:39 +00:00
Reid Spencer 675fb2301f For PR761:
Remove the Endianness and PointerSize fields from the ModuleHeader and
replace it with the DataLayout field.

llvm-svn: 33529
2007-01-26 08:10:24 +00:00
Reid Spencer 6a8d4eab6a For PR761:
BCReader no longer has a header that contains the endinanness and
pointer size. It's been replaced by datalayout field.

llvm-svn: 33528
2007-01-26 08:09:01 +00:00
Reid Spencer 93b2d78121 For PR761:
Remove the setEndianess and setPointerSize methods. These are now
handled via the setDataLayout method.

llvm-svn: 33527
2007-01-26 08:07:57 +00:00
Reid Spencer 1743debcf2 For PR761:
Remove the setEndiannes and setPointerSize methods. These are now set
through the setDataLayout method.

llvm-svn: 33526
2007-01-26 08:07:01 +00:00
Reid Spencer 8d6d4b8e36 Regenerate for PR645 and PR761
llvm-svn: 33525
2007-01-26 08:05:27 +00:00
Reid Spencer 791b8ef1b6 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 =

llvm-svn: 33524
2007-01-26 08:04:51 +00:00
Reid Spencer 788e317cd7 For PR645:
Implement new syntax for local and global symbols. Types and local
symbols use the % prefix. Global variables and functions use the @ prefix.

llvm-svn: 33523
2007-01-26 08:02:52 +00:00
Reid Spencer c4fbcb370b For PR645:
Remove the Function::renameLocalSymbols function as it is no longer
needed.

llvm-svn: 33522
2007-01-26 08:01:30 +00:00
Reid Spencer a760b7e1d3 IntegerType is a sized DerivedType too.
llvm-svn: 33521
2007-01-26 07:51:36 +00:00
Reid Spencer 2546b76054 Clean up comments and assert messages that still refer to the old type names.
llvm-svn: 33520
2007-01-26 07:37:34 +00:00
Reid Spencer 7e16e23df8 Fix an assertion message.
llvm-svn: 33519
2007-01-26 06:30:34 +00:00
Evan Cheng 1e270b639d SplitBlockBeforeInstr() insert a unconditional branch to the next BB. This
is unnecessary when we are fixing up a conditional branch since we will be
adding a unconditional branch to the destination of the original branch.

llvm-svn: 33517
2007-01-26 02:02:39 +00:00
Devang Patel 6a47b3c655 Remove dead code.
CallGraphSCCPass does not need to implement runOnModule().
It supports runOnSCC().

llvm-svn: 33516
2007-01-26 01:08:18 +00:00
Evan Cheng db7f0591f3 Need to scan the function for branches even if there aren't any constants.
llvm-svn: 33515
2007-01-26 01:04:44 +00:00
Devang Patel 13058a5ae9 Inherit CallGraphSCCPass directly from Pass.
llvm-svn: 33514
2007-01-26 00:47:38 +00:00
Devang Patel 08731903d0 Inherit FunctionPass directly from Pass.
llvm-svn: 33513
2007-01-26 00:23:00 +00:00
Evan Cheng 1d138989f4 Forgot to update this.
llvm-svn: 33512
2007-01-25 23:31:04 +00:00
Devang Patel 5292e65791 Inherit BasicBlockPass directly from Pass.
llvm-svn: 33511
2007-01-25 23:23:25 +00:00
Evan Cheng 010ae386b8 Add comment, fix typo, reduce memory usage, etc.
llvm-svn: 33510
2007-01-25 23:18:59 +00:00
Evan Cheng fa824b9f73 I am an idiot.
llvm-svn: 33509
2007-01-25 23:18:16 +00:00
Evan Cheng 313c2937f0 Fix comment.
llvm-svn: 33508
2007-01-25 22:48:25 +00:00
Evan Cheng b03e9118be Fix test case.
llvm-svn: 33507
2007-01-25 22:28:32 +00:00
Devang Patel 98095bf795 Remove dead code.
llvm-svn: 33506
2007-01-25 22:27:00 +00:00