Dale Johannesen
2e9b020e89
Add CCAssignToStackABISizeAlign for convenience in
...
dealing with types whose size & alignment are
different on different subtargets. Use it for x86 f80.
llvm-svn: 43988
2007-11-10 22:07:15 +00:00
Ted Kremenek
b16c8aac59
Fixed a bug introduced by my last patch. Now we properly clear out the BatchIDVec
...
vector before reusing it.
llvm-svn: 43984
2007-11-10 19:33:26 +00:00
Ted Kremenek
72b9e78ab1
Fixed hack in BatchReadOwnedPtrs to no longer use the array of pointers passed in for
...
deserialization as a temporary location for storing serialized pointer identifiers. The
definition of SerializedPtrID will likely change significantly in the future, and the
current implementation caused compilation errors on some 64-bit machines.
llvm-svn: 43983
2007-11-10 19:28:49 +00:00
Ted Kremenek
54dec4ece0
Updated method signature to conform with the typedef in the method prototype.
...
llvm-svn: 43982
2007-11-10 19:19:32 +00:00
Arnold Schwaighofer
64ad6fa1fa
Update tailcall code to include inline attribute operand for memcpy.
...
llvm-svn: 43978
2007-11-10 10:48:01 +00:00
Ted Kremenek
107cb494e2
Added "random access" to the Deserializer to allow a client to jump to any
...
serialized block in the bitstream, including a block in an entirely different
nesting than the current block. This is useful for deserializing objects from
a bitstream in an order different from the order that they were serialized.
llvm-svn: 43973
2007-11-10 02:02:34 +00:00
Ted Kremenek
93329cbed2
Made Deserializer a friend class of BitstreamReader.
...
Moved some of the logic in BitstreamReader::ExitBlock into a utility function
BitstreamReader::PopBlockScope. The latter is a private method. It will also
be called by Deserializer to manipulate the current "block scope."
llvm-svn: 43972
2007-11-10 02:00:38 +00:00
Evan Cheng
c6287abec9
Added -test-opts to specify test options.
...
llvm-svn: 43971
2007-11-10 01:33:27 +00:00
Chris Lattner
5f898a044f
Update links.
...
llvm-svn: 43964
2007-11-09 21:49:08 +00:00
Evan Cheng
ea1474bdf3
Fix tests.
...
llvm-svn: 43961
2007-11-09 20:46:00 +00:00
Hartmut Kaiser
72dc0f6e89
Fixed a strange construct. Please review.
...
llvm-svn: 43960
2007-11-09 19:59:00 +00:00
Hartmut Kaiser
789fa32301
Updated VC++ build system
...
llvm-svn: 43959
2007-11-09 19:54:59 +00:00
Chris Lattner
4ddbe0fc23
try again
...
llvm-svn: 43956
2007-11-09 19:24:54 +00:00
Evan Cheng
946afd2f6c
Unbreak x86-64 jumptable.
...
llvm-svn: 43955
2007-11-09 19:11:23 +00:00
Anton Korobeynikov
dcc6077439
Silence a warning
...
llvm-svn: 43954
2007-11-09 19:06:14 +00:00
Dale Johannesen
eca19e7eca
Revert previous rewrite per chris's comments.
...
llvm-svn: 43950
2007-11-09 18:07:11 +00:00
Chris Lattner
a82bbe25f4
Tighten up a check for folding away loads from (newly constant) globals. This
...
fixes a crash on Transforms/GlobalOpt/2007-11-09-GEP-GEP-Crash.ll and
rdar://5585488.
llvm-svn: 43949
2007-11-09 17:33:02 +00:00
Duncan Sands
70d87440dd
Thanks to the XTARGET line, this test should still
...
be run on darwin, but I have no way of checking...
llvm-svn: 43945
2007-11-09 13:50:25 +00:00
Duncan Sands
edf7e3b5f4
Move MinAlign to MathExtras.h.
...
llvm-svn: 43944
2007-11-09 13:41:39 +00:00
Anton Korobeynikov
79e4c423ea
Fix indent
...
llvm-svn: 43941
2007-11-09 12:34:20 +00:00
Anton Korobeynikov
369f4381ea
Forget to commit users part of value mapper interface
...
llvm-svn: 43940
2007-11-09 12:27:04 +00:00
Anton Korobeynikov
45ee4e7e7c
And delete this one
...
llvm-svn: 43939
2007-11-09 12:22:04 +00:00
Anton Korobeynikov
8ab03c9d1c
Make this header public
...
llvm-svn: 43938
2007-11-09 12:16:58 +00:00
Duncan Sands
7df7c7aed1
Fix some load/store logic that would be wrong for
...
apints on big-endian machines if the bitwidth is
not a multiple of 8. Introduce a new helper,
MVT::getStoreSizeInBits, and use it.
llvm-svn: 43934
2007-11-09 08:57:19 +00:00
Duncan Sands
3a9cf68f35
Add terminating newline.
...
llvm-svn: 43933
2007-11-09 08:30:21 +00:00
Duncan Sands
ef4d3ad387
Check that the first and third characters, s and u,
...
are accessed with an alignment of 2 not 1.
llvm-svn: 43932
2007-11-09 07:47:29 +00:00
Duncan Sands
90137bda38
Check that accesses to the second short, t, have
...
an alignment of 2 rather than 4.
llvm-svn: 43931
2007-11-09 07:46:02 +00:00
Bill Wendling
2405ec2b73
Initial commit of files that support building LLVM the "Apple" way.
...
llvm-svn: 43929
2007-11-09 06:59:33 +00:00
Nick Lewycky
f19fd81733
Add a link to the tutorial.
...
llvm-svn: 43928
2007-11-09 05:45:51 +00:00
Evan Cheng
7d8deec92f
Much improved pic jumptable codegen:
...
Then:
call "L1$pb"
"L1$pb":
popl %eax
...
LBB1_1: # entry
imull $4, %ecx, %ecx
leal LJTI1_0-"L1$pb"(%eax), %edx
addl LJTI1_0-"L1$pb"(%ecx,%eax), %edx
jmpl *%edx
.align 2
.set L1_0_set_3,LBB1_3-LJTI1_0
.set L1_0_set_2,LBB1_2-LJTI1_0
.set L1_0_set_5,LBB1_5-LJTI1_0
.set L1_0_set_4,LBB1_4-LJTI1_0
LJTI1_0:
.long L1_0_set_3
.long L1_0_set_2
Now:
call "L1$pb"
"L1$pb":
popl %eax
...
LBB1_1: # entry
addl LJTI1_0-"L1$pb"(%eax,%ecx,4), %eax
jmpl *%eax
.align 2
.set L1_0_set_3,LBB1_3-"L1$pb"
.set L1_0_set_2,LBB1_2-"L1$pb"
.set L1_0_set_5,LBB1_5-"L1$pb"
.set L1_0_set_4,LBB1_4-"L1$pb"
LJTI1_0:
.long L1_0_set_3
.long L1_0_set_2
llvm-svn: 43924
2007-11-09 01:32:10 +00:00
Evan Cheng
781ed42681
Didn't mean to check these in.
...
llvm-svn: 43923
2007-11-09 01:28:33 +00:00
Evan Cheng
7e1d8b99ab
Bug fix. Passive nodes are not in SUnitMap.
...
llvm-svn: 43922
2007-11-09 01:27:11 +00:00
Chuck Rose III
7ee95091de
Adding some recently added files to the VStudio projects
...
llvm-svn: 43919
2007-11-09 00:48:27 +00:00
Dale Johannesen
8a9ec1582b
Rewrite Dwarf number handling per review comments.
...
llvm-svn: 43918
2007-11-09 00:47:10 +00:00
Ted Kremenek
43cd07be2c
Updated Deserializer class to provide more information about the current
...
block that is being visited in the bitstream. The client can also now
skip blocks before reading them, and query the current abbreviation number
as seen from the perspective of the Deserializer. This allows the client
to be more interactive in the deserialization process (if they so choose).
llvm-svn: 43916
2007-11-09 00:43:51 +00:00
Devang Patel
ed50bee7a8
Run this test only on darwin.
...
llvm-svn: 43912
2007-11-08 22:26:46 +00:00
Owen Anderson
17a70ad8c6
This preserves critical edge breaking.
...
llvm-svn: 43911
2007-11-08 22:23:57 +00:00
Owen Anderson
8f46b986d9
Make BreakCriticalMachineEdges available as a pass that can be depended on.
...
llvm-svn: 43910
2007-11-08 22:20:23 +00:00
Ted Kremenek
4457e36ffe
Added typedef "SerializedPtrID" to represent the pointer handle written to disk
...
instead of just using "unsigned". This gives us more flexibility in changing
the definition of the handle later, and is more self-documenting.
Added tracking of block stack in the Deserializer. Now clients can query
if they are still within a block using the methods GetCurrentBlockLocation()
and FinishedBlock().
llvm-svn: 43903
2007-11-08 19:50:46 +00:00
Andrew Lenharth
83adca5075
Better check
...
llvm-svn: 43897
2007-11-08 18:45:15 +00:00
Andrew Lenharth
310a65171d
Fix PR1780
...
llvm-svn: 43893
2007-11-08 17:39:28 +00:00
Lauro Ramos Venancio
d8f2190c19
[ARM] Implement __builtin_thread_pointer.
...
llvm-svn: 43892
2007-11-08 17:20:05 +00:00
Evan Cheng
d9bab93a44
If both parts of smul_lohi, etc. are used, don't simplify. If only one part is used, try simplify it.
...
llvm-svn: 43888
2007-11-08 09:25:29 +00:00
Owen Anderson
1032243608
Add the majority of machine-level critical edge breaking pass. Most of this was written by Fernando, cleanup and updating to TOT by me.
...
This still needs a bit of work, particularly to handle jump tables properly.
llvm-svn: 43885
2007-11-08 07:55:43 +00:00
Owen Anderson
b735086b08
Take another stab at getting isLiveIn() and isLiveOut() right.
...
llvm-svn: 43869
2007-11-08 01:32:45 +00:00
Owen Anderson
1e15f3cd4f
Fix MachineDominators' getAnalysisUsage.
...
llvm-svn: 43868
2007-11-08 01:22:53 +00:00
Owen Anderson
6b14317130
Oops, forgot to commit this file.
...
llvm-svn: 43867
2007-11-08 01:22:24 +00:00
Owen Anderson
ba84ab5b21
Bring UsedBlocks back. StrongPHIElimination needs this information.
...
llvm-svn: 43866
2007-11-08 01:20:48 +00:00
Ted Kremenek
93c65108de
Revised BatchEmitOwnedPtrs to work better with constant pointers.
...
llvm-svn: 43861
2007-11-08 00:55:31 +00:00
Ted Kremenek
eaafbccdd8
Revised implementation of BatchReadOwnedPtrs() that deserializes an
...
array of pointers to not allocate a second array to contain the pointer ids.
Fixed bug in the same member function where deserialized pointers were
not being registered with the backpatcher.
llvm-svn: 43855
2007-11-08 00:04:50 +00:00