Dale Johannesen
e6e435498c
name change requested by review of previous patch
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37289 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-22 18:31:04 +00:00
Dale Johannesen
81da02b553
Make tail merging the default, except on powerPC. There was no prior art
...
for a target-dependent default with a command-line override; this way
should be generally usable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37285 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-22 17:14:46 +00:00
Evan Cheng
d46a8ea5d5
Consistency.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37274 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-22 01:21:58 +00:00
Chris Lattner
ef547ddcdd
better portability for intptr_t.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37221 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-18 07:07:05 +00:00
Evan Cheng
b5cdaa257e
RemoveBranch() and InsertBranch() now returns number of instructions deleted / inserted.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37192 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-18 00:05:48 +00:00
Evan Cheng
f48ae4630b
Fix comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37191 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-18 00:00:30 +00:00
Evan Cheng
4f098788d3
Move isSuccessor() offline, change it to use std::find.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37190 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-17 23:58:53 +00:00
Dan Gohman
e99d492a15
Correct a name in a comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37178 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-17 21:30:39 +00:00
Chris Lattner
26b146ccf1
silence some "comparison between signed and unsigned integer expressions"
...
warnings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37177 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-17 20:01:40 +00:00
Dan Gohman
df799afbec
Fix some sporadic segfaults that are triggered when SmallVector's heap
...
storage lands near the end of the available address space. In the expression
Begin+N > Capacity, the Begin+N was overflowing. Fix this by replacing it
by with an expression that doesn't involve computation of an address
beyond the end of allocated memory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37171 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-17 18:29:01 +00:00
Evan Cheng
d9e9efb253
Remove. Not needed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37139 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-17 00:11:35 +00:00
Evan Cheng
d60483ef99
Add target hook to specify block size limit for if-conversion.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37134 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 23:45:53 +00:00
Evan Cheng
02c602b333
PredicateInstruction returns true if the operation was successful.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37124 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 21:53:07 +00:00
Evan Cheng
1bccb49082
Rename M_PREDICATED to M_PREDICABLE; Move TargetInstrInfo::isPredicatable() to MachineInstr::isPredicable().
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37115 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 20:43:42 +00:00
Chris Lattner
bfcd8038ce
add missing mmx intrinsic
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37099 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 06:03:49 +00:00
Evan Cheng
6c1d2b90e3
Fix comments.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37096 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 05:09:34 +00:00
Evan Cheng
4e654852f1
Initial commit of (very basic) if converter.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37092 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 02:00:57 +00:00
Evan Cheng
0402e170e8
Add TargetInstrInfo predication hooks.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37091 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 01:58:56 +00:00
Evan Cheng
19e3f31f6a
Added getNumExplicitOperands and findFirstPredOperand.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37064 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-15 01:26:09 +00:00
Evan Cheng
5de723c118
All operands that made up of the predicate operands are maked M_PREDICATE_OPERAND.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37062 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-15 01:21:27 +00:00
Dan Gohman
289f61709f
Correct a comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37058 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-15 00:20:13 +00:00
Evan Cheng
2f6cb2b14c
Fix for PR1406:
...
v1 =
r2 = move v1
= op r2<kill>
...
r2 = move v1
= op r2<kill>
Clear the first r2 kill if v1 and r2 are joined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37050 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 21:10:05 +00:00
Dan Gohman
2703f23304
Use templates for the GraphType for DefaultDOTGraphTraits' members instead
...
of just using void*. This allows it to be used with graph adapters like
Inverse.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37032 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 14:23:27 +00:00
Dan Gohman
b7f0675f43
Add a addRequiredTransitiveID member function, which is to
...
addRequiredTransitive as addRequiredID is to addRequired.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37031 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 14:21:46 +00:00
Chris Lattner
d82dc66944
update comments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37027 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 01:54:16 +00:00
Reid Spencer
19dc32a2d4
Add some things needed by the llvm-gcc version supporting bit accurate integer
...
types:
1. Functions to compute div/rem at the same time.
2. Further assurance that an APInt with 0 bitwidth cannot be constructed.
3. Left and right rotate operations.
4. An exactLogBase2 function which requires an exact power of two or it
returns -1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37025 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-13 23:44:59 +00:00
Anton Korobeynikov
8c7c17354c
Emit multiple common EH frames for multiple (including blank) personality
...
functions. This partly fixes PR1414: now we're restricted only to one
personality function per eh frame, not per module. Further work on
"multiple personalities" topic needs representative example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37018 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-13 15:42:26 +00:00
Anton Korobeynikov
0ff3ca4f92
More DWARF-related things cleanup:
...
1. Fix PR1380
2. Apply Duncan's patch from PR1410
3. Insert workaround for "one personality function per module" as noted in PR1414
4. Emit correct debug frames for x86/linux. This partly fixes DebugInfo/2006-11-06-StackTrace.cpp: stack trace is
shown correctly, but arguments for function on top of stack are displayed incorrectly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37015 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-12 22:36:25 +00:00
Dan Gohman
667976e35f
Remove forward-declarations for classes that don't exist.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36993 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 21:05:57 +00:00
Dan Gohman
1031c6f220
Add explicit keywords to several constructors that now have one argument.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36992 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 21:04:48 +00:00
Dan Gohman
b96039e4b9
Simplify BranchInst::getSuccessor, avoiding a conditional operator.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36991 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 20:59:29 +00:00
Anton Korobeynikov
eeb37e0b80
Allow multiple invokes per landing pad. This (probably) fixes PR1410.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36977 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-10 22:34:59 +00:00
Evan Cheng
56184904cd
Eliminate MarkVirtRegAliveInBlock recursion.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36943 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-08 19:00:00 +00:00
Evan Cheng
6603d7ec67
Add MachineBasicBlock preds / succs reverse iterators.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36942 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-08 18:55:03 +00:00
Chris Lattner
7adb53e7b1
update comments, no functionality change
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36929 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-08 05:38:32 +00:00
Jeff Cohen
0fea8ebb4a
Unbreak VC++ build.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36901 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-07 15:21:46 +00:00
Chris Lattner
5499da8833
Enhance MemoryBuffer to return error messages in strings if they occur.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36899 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 23:32:36 +00:00
Chris Lattner
4f40b75b01
remove bytecode headers
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36885 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 19:47:36 +00:00
Chris Lattner
663d7ddf63
remove dead header
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36884 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 19:46:23 +00:00
Nick Lewycky
ecd94c804a
Fix typo in comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36873 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 13:37:16 +00:00
Chris Lattner
4cbc5485e0
Move this here from Bytecode/Archive.h
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36865 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 09:14:53 +00:00
Chris Lattner
b55a5803b2
allow zero-length arrays
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36863 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 08:22:10 +00:00
Chris Lattner
9850b57587
we aren't at the end of stream until we've consumed all the bytes AND all
...
the bits in those bytes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36861 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 08:12:09 +00:00
Chris Lattner
609083b9e0
add support for identifying bitcode files
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36845 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 05:30:10 +00:00
Chris Lattner
e96eec0c69
Add a helper that either opens a file or stdin.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36835 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 04:41:59 +00:00
Jeff Cohen
85a57910bd
Make code more 64-bit aware.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36833 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 03:24:19 +00:00
Jeff Cohen
332376bc60
Unbreak VC++.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36831 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 03:12:47 +00:00
Chris Lattner
e8e1e4bf8a
add a new CreateBitcodeWriterPass method, which creates a bitcode writer as
...
a pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36828 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 02:30:12 +00:00
Chris Lattner
c5ff2cc3de
add inline asm code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36826 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 01:50:11 +00:00
Chris Lattner
048d0bd4c0
Fix a subtle bug that prevented round-tripping 470.lbm
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36825 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 01:43:38 +00:00