Chris Lattner
4333f8b1cf
refactor GetRegistersForValue to take OpInfo as an argument instead of various
...
pieces of it. No functionality change.
llvm-svn: 36592
2007-04-30 17:29:31 +00:00
Chris Lattner
ef07332504
refactor some code, no functionality change
...
llvm-svn: 36590
2007-04-30 17:16:27 +00:00
Chris Lattner
b58f93f273
Clean up multi-line asam string printing. Instead of printing:
...
# InlineAsm Start
subfc r3,r5,r4
subfze r4,r3
# InlineAsm End
print:
# InlineAsm Start
subfc r3,r5,r4
subfze r4,r3
# InlineAsm End
llvm-svn: 36589
2007-04-30 17:00:18 +00:00
Anton Korobeynikov
a30bc8fccf
Fix typo. Interesting, but old variant worked too :)
...
llvm-svn: 36588
2007-04-30 10:28:40 +00:00
Reid Spencer
e7449654d1
For PR1370:
...
Rearrange some tests so that if PowerPC is not being built we don't try to
run PowerPC specific tests.
llvm-svn: 36587
2007-04-30 05:11:58 +00:00
Dale Johannesen
8dd36a51fc
Remove item: thumb padding in constant islands
...
llvm-svn: 36586
2007-04-30 00:32:06 +00:00
Dale Johannesen
71577f3848
remove unused variable
...
llvm-svn: 36585
2007-04-30 00:30:48 +00:00
Reid Spencer
8d4ff90680
If an archive is not recognized as an LLVM bytecode archive then declare
...
that it is native so that the linker will pass it on downstream. This avoids
a problem where the native link line fails because there is both a .so and
a .a file. The .a file gets processed as bytecode and then dropped from the
command line.
llvm-svn: 36584
2007-04-30 00:29:39 +00:00
Lauro Ramos Venancio
2c673ad7ef
Enable protected visibility on ARM.
...
llvm-svn: 36583
2007-04-30 00:23:51 +00:00
Reid Spencer
d857ef651b
Dependent libraries could be native too.
...
llvm-svn: 36582
2007-04-30 00:00:10 +00:00
Reid Spencer
986b9df04e
Augment the verbose output to print out the sub-commands executed.
...
llvm-svn: 36581
2007-04-29 23:59:47 +00:00
Chris Lattner
84e376f669
add some helpers
...
llvm-svn: 36580
2007-04-29 21:49:05 +00:00
Chris Lattner
3543caacd3
Implement much expanded dumper support. We now print stuff like:
...
<MODULE_BLOCK NumWords=27 BlockCodeSize=3>
<TYPE_BLOCK NumWords=7 BlockCodeSize=4>
<NUMENTRY op0=7>
<POINTER op0=1>
<FUNCTION op0=0 op1=2 op2=2 op3=2 op4=2>
<VECTOR op0=2 op1=3>
<INTEGER op0=64>
<VECTOR op0=8 op1=5>
<INTEGER op0=16>
<VOID>
...
With work, the operands can be pretty printed symbolically.
llvm-svn: 36579
2007-04-29 21:48:19 +00:00
Anton Korobeynikov
31fc4f9526
Implement visibility checking during linking. Also implement protected
...
visibility support for bitcode.
llvm-svn: 36577
2007-04-29 20:56:48 +00:00
Chris Lattner
1684cee5a2
add some simple per-block statistics
...
llvm-svn: 36576
2007-04-29 20:00:02 +00:00
Chris Lattner
e2ea46d50b
compute this value correctly
...
llvm-svn: 36575
2007-04-29 19:49:58 +00:00
Dale Johannesen
4a00cf3fc4
Rewrite of Thumb constant islands handling (exact allowance for padding
...
around islands and jump tables).
llvm-svn: 36573
2007-04-29 19:19:30 +00:00
Dale Johannesen
1ee29dd026
Make ARM-specific version of getInlineAsmLength
...
llvm-svn: 36572
2007-04-29 19:17:45 +00:00
Chris Lattner
b9bf8a8daa
add a method
...
llvm-svn: 36571
2007-04-29 19:17:32 +00:00
Chris Lattner
f897cb45a5
not all targets want to return an i32. What really matters is whether llc accepts the generated code.
...
llvm-svn: 36569
2007-04-29 18:59:01 +00:00
Chris Lattner
412d61af43
generalize aggregate handling
...
llvm-svn: 36568
2007-04-29 18:58:03 +00:00
Anton Korobeynikov
6058a35624
Regenerate
...
llvm-svn: 36566
2007-04-29 18:38:24 +00:00
Anton Korobeynikov
39f3cffbe3
Implement protected visibility. This partly implements PR1363. Linker
...
should be taught to deal with protected symbols.
llvm-svn: 36565
2007-04-29 18:35:00 +00:00
Anton Korobeynikov
546ea7ea88
Implement review feedback
...
llvm-svn: 36564
2007-04-29 18:02:48 +00:00
Chris Lattner
a05721d340
Jeff's fix was fine
...
llvm-svn: 36563
2007-04-29 17:44:10 +00:00
Chris Lattner
8f73e83c49
add missing ctor
...
llvm-svn: 36562
2007-04-29 17:40:50 +00:00
Jeff Cohen
990a58f242
Fix MemoryBuffer breakage correctly.
...
llvm-svn: 36561
2007-04-29 14:43:31 +00:00
Jeff Cohen
af81575b68
Unbreak VC++ build.
...
llvm-svn: 36560
2007-04-29 14:22:14 +00:00
Jeff Cohen
50b2d2c6e3
Unbreak build.
...
llvm-svn: 36559
2007-04-29 14:21:44 +00:00
Anton Korobeynikov
8a00ba1c69
Updated aliases test
...
llvm-svn: 36558
2007-04-29 10:34:42 +00:00
Chris Lattner
ca0ea543f5
Implement support to read an arbitrary bitcode file. Next up, dumping the
...
file symbolically and actually computing statistics.
llvm-svn: 36557
2007-04-29 08:31:14 +00:00
Chris Lattner
0399758b5f
very early support for analyzing a bitstream. This opens the file, starts
...
reading the stream, and detects whether it is LLVM IR or not.
llvm-svn: 36556
2007-04-29 08:12:22 +00:00
Chris Lattner
fc4d7cd1ff
make this file self-contained
...
llvm-svn: 36555
2007-04-29 08:05:07 +00:00
Chris Lattner
6694f60bec
Switch the bitcode reader interface to take a MemoryBuffer instead of knowing
...
anything about disk I/O itself. This greatly simplifies its interface -
eliminating the need for the ReaderWrappers.cpp file.
This adds a new option to llvm-dis (-bitcode) which instructs it to read
the input file as bitcode. Until/unless the bytecode reader is taught to
read from MemoryBuffer, there is no way to handle stdin reading without it.
I don't plan to switch the bytecode reader over, I'd rather delete it :),
so the option will stay around temporarily.
llvm-svn: 36554
2007-04-29 07:54:31 +00:00
Chris Lattner
ee2d1f1ed2
Add a new memorybuffer class, to unify all the file reading code in the system
...
llvm-svn: 36553
2007-04-29 06:58:52 +00:00
Chris Lattner
084982501a
new method for creating a path, which does not create a temporary string.
...
llvm-svn: 36552
2007-04-29 06:16:32 +00:00
Chris Lattner
cc18989c14
fit in 80 cols
...
llvm-svn: 36551
2007-04-29 05:51:00 +00:00
Chris Lattner
f0a1ebae4b
Fix this to use the right block ID
...
llvm-svn: 36550
2007-04-29 05:49:09 +00:00
Chris Lattner
87351e2a52
moved Writer.cpp -> BitcodeWriter.cpp to make it more unique in the tree.
...
llvm-svn: 36549
2007-04-29 05:31:57 +00:00
Jeff Cohen
222a8a4311
Minor corrections.
...
llvm-svn: 36548
2007-04-29 01:07:00 +00:00
Chris Lattner
401d8db381
memory operands that have a direct operand should have their stores created
...
before the copies into physregs are done. This avoids having flag operands
skip the store, causing cycles in the dag at sched time. This fixes infinite
loops on these tests:
test/CodeGen/Generic/2007-04-08-MultipleFrameIndices.ll for PR1308
test/CodeGen/PowerPC/2007-01-29-lbrx-asm.ll
test/CodeGen/PowerPC/2007-01-31-InlineAsmAddrMode.ll
test/CodeGen/X86/2006-07-12-InlineAsmQConstraint.ll for PR828
llvm-svn: 36547
2007-04-28 21:12:06 +00:00
Chris Lattner
de339fa55d
eliminate more redundant constraint type analysis
...
llvm-svn: 36546
2007-04-28 21:03:16 +00:00
Chris Lattner
b2e55562ed
merge constraint type analysis stuff together.
...
llvm-svn: 36545
2007-04-28 21:01:43 +00:00
Chris Lattner
d7e3b6c442
Significant refactoring of the inline asm stuff, to support future changes.
...
No functionality change.
llvm-svn: 36544
2007-04-28 20:49:53 +00:00
Reid Spencer
25d797b7ca
Regenerate.
...
llvm-svn: 36543
2007-04-28 16:07:31 +00:00
Reid Spencer
7851765b0a
Revert the premature portion of the last commit.
...
llvm-svn: 36542
2007-04-28 16:06:50 +00:00
Anton Korobeynikov
daf358bbff
This is not "FIXME" anymore
...
llvm-svn: 36541
2007-04-28 14:57:59 +00:00
Anton Korobeynikov
7b2a2f9075
Let Verifier check aliasees
...
llvm-svn: 36540
2007-04-28 14:35:41 +00:00
Reid Spencer
b19636e4af
Fix a compilation error (jump to case label).
...
llvm-svn: 36539
2007-04-28 14:13:42 +00:00
Anton Korobeynikov
511d54f61b
Regenerate
...
llvm-svn: 36538
2007-04-28 13:48:45 +00:00