Anton Korobeynikov
21beed669e
Updated aliases test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36558 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 10:34:42 +00:00
Chris Lattner
32de6330f1
Implement support to read an arbitrary bitcode file. Next up, dumping the
...
file symbolically and actually computing statistics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36557 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 08:31:14 +00:00
Chris Lattner
45e0f890f8
very early support for analyzing a bitstream. This opens the file, starts
...
reading the stream, and detects whether it is LLVM IR or not.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36556 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 08:12:22 +00:00
Chris Lattner
107d80956d
make this file self-contained
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36555 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 08:05:07 +00:00
Chris Lattner
c453f76e2b
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36554 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 07:54:31 +00:00
Chris Lattner
333ffd4abf
Add a new memorybuffer class, to unify all the file reading code in the system
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36553 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 06:58:52 +00:00
Chris Lattner
a527bf13a5
new method for creating a path, which does not create a temporary string.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36552 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 06:16:32 +00:00
Chris Lattner
63db485b79
fit in 80 cols
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36551 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 05:51:00 +00:00
Chris Lattner
01b27458a1
Fix this to use the right block ID
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36550 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 05:49:09 +00:00
Chris Lattner
1a9df8eee0
moved Writer.cpp -> BitcodeWriter.cpp to make it more unique in the tree.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36549 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 05:31:57 +00:00
Jeff Cohen
b627eab040
Minor corrections.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36548 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 01:07:00 +00:00
Chris Lattner
09e4b7e1b7
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36547 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 21:12:06 +00:00
Chris Lattner
c83994e5d4
eliminate more redundant constraint type analysis
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36546 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 21:03:16 +00:00
Chris Lattner
2a600be226
merge constraint type analysis stuff together.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36545 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 21:01:43 +00:00
Chris Lattner
0c58340aea
Significant refactoring of the inline asm stuff, to support future changes.
...
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36544 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 20:49:53 +00:00
Reid Spencer
9c9b63a5b8
Regenerate.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36543 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 16:07:31 +00:00
Reid Spencer
863dd88cc5
Revert the premature portion of the last commit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36542 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 16:06:50 +00:00
Anton Korobeynikov
7dde0ff0ba
This is not "FIXME" anymore
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36541 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 14:57:59 +00:00
Anton Korobeynikov
0f53f7f240
Let Verifier check aliasees
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36540 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 14:35:41 +00:00
Reid Spencer
3cb4ddaec0
Fix a compilation error (jump to case label).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36539 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 14:13:42 +00:00
Anton Korobeynikov
38e09802f6
Regenerate
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36538 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 13:48:45 +00:00
Anton Korobeynikov
a80e1181b7
Implement review feedback. Aliasees can be either GlobalValue's or
...
bitcasts of them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36537 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 13:45:00 +00:00
Chris Lattner
44b2c5098f
memory inputs to an inline asm are required to have an address available.
...
If the operand is not already an indirect operand, spill it to a constant
pool entry or a stack slot.
This fixes PR1356 and CodeGen/X86/2007-04-27-InlineAsm-IntMemInput.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36536 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:42:38 +00:00
Chris Lattner
c44f3ea172
new testcase for PR1356
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36535 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:41:13 +00:00
Chris Lattner
f2f3cd5129
Fix CodeGen/Generic/2007-04-27-LargeMemObject.ll and
...
CodeGen/Generic/2007-04-27-InlineAsm-X-Dest.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36534 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:08:13 +00:00
Chris Lattner
15c928640d
ensure the operand prints.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36533 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:07:55 +00:00
Chris Lattner
5bee46d8e3
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36532 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:05:59 +00:00
Chris Lattner
93e3d8f308
update syntax
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36531 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:03:12 +00:00
Chris Lattner
83f241ec61
not fully implemented yet.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36530 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:02:13 +00:00
Chris Lattner
4c27344bfd
add a default parameter
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36529 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 05:42:38 +00:00
Chris Lattner
bb58b9c3c0
add a way to make this less brittle
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36528 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 05:38:52 +00:00
Chris Lattner
7f3c4d49df
fix a bug triggered by 403.gcc
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36527 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 05:27:36 +00:00
Chris Lattner
827a1f45c5
update for new inline asm syntax
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36526 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 05:20:26 +00:00
Chris Lattner
e62f021c8c
Fix several latent bugs in EmitGEPOffset that didn't manifest with its
...
previous clients. This fixes MallocBench/gs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36525 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 04:52:43 +00:00
Chris Lattner
b017318122
Fix this to match change to InlineAsm class.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36524 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 04:05:59 +00:00
Chris Lattner
53c22fc7c6
uhn zap cvs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36523 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 03:50:56 +00:00
Chris Lattner
73d0d0d4b8
represent indirect operands explicitly in inline asm strings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36522 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 01:02:58 +00:00
Chris Lattner
9bc1464094
Implement PR1345 and Transforms/InstCombine/bitcast-gep.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36521 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 00:57:34 +00:00
Chris Lattner
947780b1f9
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36520 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 00:54:45 +00:00
Dale Johannesen
caa8055cf5
change per review
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36519 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 00:36:37 +00:00
Dale Johannesen
25c1f9e125
Prevent Thumb code from generating ARM instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36518 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 22:17:18 +00:00
Lauro Ramos Venancio
2a3779966f
fix the test tls1.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36517 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 21:23:17 +00:00
Lauro Ramos Venancio
1bd151a851
add TLS tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36516 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 21:08:48 +00:00
Chris Lattner
6b0974cd1d
add a GEP helper function
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36515 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 20:35:56 +00:00
Lauro Ramos Venancio
4c6d20a096
add parenthesis.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36514 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 20:10:08 +00:00
Evan Cheng
185ea1e2aa
Doh. ARM::LEApcrel is a single instruction MI.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36513 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 18:27:13 +00:00
Lauro Ramos Venancio
fdc9692f97
In Thumb mode, the frame register must be R7.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36512 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 17:58:03 +00:00
Chris Lattner
d3e28347e5
refactor some code relating to pointer cast xforms, pulling it out of the codepath
...
for unrelated casts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36511 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 17:44:50 +00:00
Chris Lattner
eb7f34f2cb
Fix incorrect legalization of EHSELECTOR. This fixes
...
CodeGen/Generic/2007-04-14-EHSelectorCrash.ll and PR1326
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36510 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 17:12:52 +00:00
Chris Lattner
85f777946e
make this testcase harder, to cover PR1326
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36509 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-27 17:12:23 +00:00