oota-llvm.git
14 years agoDon't call Predicate_* methods directly from Sparc target.
Jakob Stoklund Olesen [Tue, 17 Aug 2010 18:17:12 +0000 (18:17 +0000)]
Don't call Predicate_* methods directly from Sparc target.
Modernize predicates a bit.

The Predicate_* methods are not used by TableGen any longer. They are only
emitted for the sake of legacy code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111263 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd hook to examine an instruction referencing a frame index to determine
Jim Grosbach [Tue, 17 Aug 2010 18:13:53 +0000 (18:13 +0000)]
Add hook to examine an instruction referencing a frame index to determine
whether to allocate a virtual frame base register to resolve the frame
index reference in it. Implement a simple version for ARM to aid debugging.

In LocalStackSlotAllocation, scan the function for frame index references
to local frame indices and ask the target whether to allocate virtual
frame base registers for any it encounters. Purely infrastructural for
debug output. Next step is to actually allocate base registers, then add
intelligent re-use of them.

rdar://8277890

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111262 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoexplicitly handle no-op cases for clarity. Fixes clang warning.
Jim Grosbach [Tue, 17 Aug 2010 18:00:41 +0000 (18:00 +0000)]
explicitly handle no-op cases for clarity. Fixes clang warning.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111260 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse the correct entry size for relocation entries, from Roman Divacky.
Benjamin Kramer [Tue, 17 Aug 2010 17:56:13 +0000 (17:56 +0000)]
Use the correct entry size for relocation entries, from Roman Divacky.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111259 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove the decision logic whether it's a good idea to split a critical edge to clients...
Evan Cheng [Tue, 17 Aug 2010 17:43:50 +0000 (17:43 +0000)]
Move the decision logic whether it's a good idea to split a critical edge to clients. Also fixed an erroneous check. An edge is only a back edge when the from and to blocks are in the same loop.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111256 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWhen rotating loops, put the original header at the bottom of the
Dan Gohman [Tue, 17 Aug 2010 17:39:21 +0000 (17:39 +0000)]
When rotating loops, put the original header at the bottom of the
loop, making the resulting loop significantly less ugly.  Also, zap
its trivial PHI nodes, since it's easy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111255 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoremove trailing whitespace
Jim Grosbach [Tue, 17 Aug 2010 17:37:22 +0000 (17:37 +0000)]
remove trailing whitespace

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111254 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDifferentiate between RELA and REL relocations, from Roman Divacky.
Benjamin Kramer [Tue, 17 Aug 2010 17:30:07 +0000 (17:30 +0000)]
Differentiate between RELA and REL relocations, from Roman Divacky.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111252 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoChange ARM PKHTB and PKHBT instructions to use a shift_imm operand to avoid
Bob Wilson [Tue, 17 Aug 2010 17:23:19 +0000 (17:23 +0000)]
Change ARM PKHTB and PKHBT instructions to use a shift_imm operand to avoid
printing "lsl #0".  This fixes the remaining parts of pr7792.  Make
corresponding changes for encoding/decoding these instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111251 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix debug message.
Evan Cheng [Tue, 17 Aug 2010 17:15:14 +0000 (17:15 +0000)]
Fix debug message.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111250 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd some  's to a pre to avoid newlines being eaten
Chris Lattner [Tue, 17 Aug 2010 17:13:42 +0000 (17:13 +0000)]
add some  's to a pre to avoid newlines being eaten
and the formatting being thrown off.  I admit to not knowing
what is going on here.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111249 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse the getUniquePredecessor() utility function, instead of doing
Dan Gohman [Tue, 17 Aug 2010 17:07:02 +0000 (17:07 +0000)]
Use the getUniquePredecessor() utility function, instead of doing
what it does manually.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111248 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoOne baby step towards i386 ELF, from Roman Divacky.
Benjamin Kramer [Tue, 17 Aug 2010 17:02:29 +0000 (17:02 +0000)]
One baby step towards i386 ELF, from Roman Divacky.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111247 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix emacs language spec's, patch by Edmund Grimley-Evans!
Chris Lattner [Tue, 17 Aug 2010 16:20:04 +0000 (16:20 +0000)]
fix emacs language spec's, patch by Edmund Grimley-Evans!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111241 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWhen creating a JIT, try to load the program so that we can resolve symbols
Nick Lewycky [Tue, 17 Aug 2010 16:19:18 +0000 (16:19 +0000)]
When creating a JIT, try to load the program so that we can resolve symbols
against it. This affects Windows.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111240 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert r111230, we have to find a better place for the host-specific code.
Benjamin Kramer [Tue, 17 Aug 2010 15:50:23 +0000 (15:50 +0000)]
Revert r111230, we have to find a better place for the host-specific code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111232 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix failure of unittests/ExecutionEngine/JIT/MultiJITTest.cpp on
Chris Lattner [Tue, 17 Aug 2010 15:42:43 +0000 (15:42 +0000)]
Fix failure of unittests/ExecutionEngine/JIT/MultiJITTest.cpp on
cygwin when built with ENABLE_SHARED=1.  Patch by NAKAMURA Takumi!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111231 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMicro-optimize MCObjectWriter to do a byteswap if necessary and then write the
Benjamin Kramer [Tue, 17 Aug 2010 13:55:45 +0000 (13:55 +0000)]
Micro-optimize MCObjectWriter to do a byteswap if necessary and then write the
whole integer to the stream instead of doing byte-sized writes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111230 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoThere is this new "LLVM" compiler that supports __builtin_bswap but thinks it's gcc...
Benjamin Kramer [Tue, 17 Aug 2010 11:45:38 +0000 (11:45 +0000)]
There is this new "LLVM" compiler that supports __builtin_bswap but thinks it's gcc 4.2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111228 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAllow more cases of undef shuffle indices and add tests for them.
Bob Wilson [Tue, 17 Aug 2010 05:54:34 +0000 (05:54 +0000)]
Allow more cases of undef shuffle indices and add tests for them.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111226 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd an option to disable codegen prepare critical edge splitting. In theory, PHI...
Evan Cheng [Tue, 17 Aug 2010 01:34:49 +0000 (01:34 +0000)]
Add an option to disable codegen prepare critical edge splitting. In theory, PHI elimination is already doing all (most?) of the splitting needed. But machine-licm and machine-sink seem to miss some important optimizations when splitting is disabled.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111224 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix typo.
Eric Christopher [Tue, 17 Aug 2010 01:30:33 +0000 (01:30 +0000)]
Fix typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111223 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCopy over some overridden MI wrappers for ARM fast-isel. This is where
Eric Christopher [Tue, 17 Aug 2010 01:25:29 +0000 (01:25 +0000)]
Copy over some overridden MI wrappers for ARM fast-isel.  This is where
we're adding predicates and optional defs to the MachineInstrs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111222 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPHI elimination should not break back edge. It can cause some significant code placem...
Evan Cheng [Tue, 17 Aug 2010 01:20:36 +0000 (01:20 +0000)]
PHI elimination should not break back edge. It can cause some significant code placement issues. rdar://8263994

good:
LBB0_2:
  mov     r2, r0
  . . .
  mov     r1, r2
  bne     LBB0_2

bad:
LBB0_2:
  mov     r2, r0
  . . .
@ BB#3:
  mov     r1, r2
  b       LBB0_2

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111221 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove predicate workaround, we're going to require that predicate
Eric Christopher [Tue, 17 Aug 2010 01:18:37 +0000 (01:18 +0000)]
Remove predicate workaround, we're going to require that predicate
and optional def operands are handled in the backend support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111220 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake arm fast-isel possible to enable via command line.
Eric Christopher [Tue, 17 Aug 2010 00:46:57 +0000 (00:46 +0000)]
Make arm fast-isel possible to enable via command line.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111219 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTry to silence a overeager GCC warning.
Benjamin Kramer [Tue, 17 Aug 2010 00:33:24 +0000 (00:33 +0000)]
Try to silence a overeager GCC warning.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111214 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoA round of minor cleanups for ELFObjectWriter.
Benjamin Kramer [Tue, 17 Aug 2010 00:00:46 +0000 (00:00 +0000)]
A round of minor cleanups for ELFObjectWriter.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111213 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a testcase for svn 111208.
Bob Wilson [Mon, 16 Aug 2010 23:44:29 +0000 (23:44 +0000)]
Add a testcase for svn 111208.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111212 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix another iterator invalidation that caused a *really* nasty miscompilation in...
Owen Anderson [Mon, 16 Aug 2010 23:42:33 +0000 (23:42 +0000)]
Fix another iterator invalidation that caused a *really* nasty miscompilation in 403.gcc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111210 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoIgnore undef shuffle indices when checking for a VTRN shuffle. Radar 8290937.
Bob Wilson [Mon, 16 Aug 2010 23:37:17 +0000 (23:37 +0000)]
Ignore undef shuffle indices when checking for a VTRN shuffle.  Radar 8290937.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111208 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotidy up. remove unused local.
Jim Grosbach [Mon, 16 Aug 2010 23:26:09 +0000 (23:26 +0000)]
tidy up. remove unused local.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111206 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSilence warnings and simplify code. Eliminate a 32/64 bit portability issue.
Benjamin Kramer [Mon, 16 Aug 2010 23:00:12 +0000 (23:00 +0000)]
Silence warnings and simplify code. Eliminate a 32/64 bit portability issue.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111201 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoThe plural of analysis is analyses.
Dan Gohman [Mon, 16 Aug 2010 22:57:28 +0000 (22:57 +0000)]
The plural of analysis is analyses.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111200 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake dumpPassStructure be a PMDataManager abstraction, rather than
Dan Gohman [Mon, 16 Aug 2010 22:45:12 +0000 (22:45 +0000)]
Make dumpPassStructure be a PMDataManager abstraction, rather than
a Pass abstraction, since that's the level it's actually used at.
Rename Pass' dumpPassStructure to dumpPass.

This eliminates an awkward use of getAsPass() to convert a PMDataManager*
into a Pass* just to permit a dumpPassStructure call.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111199 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoBetter handle alignment requirements for local objects in pre-regalloc frame
Jim Grosbach [Mon, 16 Aug 2010 22:30:41 +0000 (22:30 +0000)]
Better handle alignment requirements for local objects in pre-regalloc frame
mapping. Have the local block track its alignment requirement, and then
apply that when the block itself is allocated. Previously, offsets could
get adjusted in PEI to be different, relative to one another, than the
block allocation thought they would be, which defeats the point of doing
the allocation this way. Continuing rdar://8277890

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111197 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoGeneralize a pattern for PKHTB: an SRL of 16-31 bits will guarantee
Bob Wilson [Mon, 16 Aug 2010 22:26:55 +0000 (22:26 +0000)]
Generalize a pattern for PKHTB: an SRL of 16-31 bits will guarantee
that the high halfword is zero.  The shift need not be exactly 16 bits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111196 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoConvert test to FileCheck.
Bob Wilson [Mon, 16 Aug 2010 22:21:13 +0000 (22:21 +0000)]
Convert test to FileCheck.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111195 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake some of PMTopLevelManager's members non-public. In particular,
Dan Gohman [Mon, 16 Aug 2010 22:03:47 +0000 (22:03 +0000)]
Make some of PMTopLevelManager's members non-public. In particular,
make its constructor protected.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111193 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove redundant inline keywords.
Dan Gohman [Mon, 16 Aug 2010 21:57:30 +0000 (21:57 +0000)]
Remove redundant inline keywords.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111192 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoEliminate the TopLevelManagerType enum; instead, just make
Dan Gohman [Mon, 16 Aug 2010 21:38:42 +0000 (21:38 +0000)]
Eliminate the TopLevelManagerType enum; instead, just make
PMTopLevelManager's constructor take a PMDataManager *, which already
provides the needed abstraction support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111189 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoComment out some broken/unused/useless instructions which mess up disassembly.
Eli Friedman [Mon, 16 Aug 2010 21:18:51 +0000 (21:18 +0000)]
Comment out some broken/unused/useless instructions which mess up disassembly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111185 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFixes for generation of ELF relocations. Patch by Roman Divacky.
Eli Friedman [Mon, 16 Aug 2010 21:17:09 +0000 (21:17 +0000)]
Fixes for generation of ELF relocations.  Patch by Roman Divacky.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111183 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDon't attempt to SimplifyShortMoveForm in 64-bit mode.
Eli Friedman [Mon, 16 Aug 2010 21:03:32 +0000 (21:03 +0000)]
Don't attempt to SimplifyShortMoveForm in 64-bit mode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111182 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUntil uleb/sleb are MC-ized, add a hack to make them work with ELF object
Eli Friedman [Mon, 16 Aug 2010 20:08:40 +0000 (20:08 +0000)]
Until uleb/sleb are MC-ized, add a hack to make them work with ELF object
emission.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111177 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a few warnings in and detabify MCELFStreamer and ELFObjectWriter.
Eli Friedman [Mon, 16 Aug 2010 19:15:06 +0000 (19:15 +0000)]
Fix a few warnings in and detabify MCELFStreamer and ELFObjectWriter.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111175 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd ELF ObjectWriter and Streamer support.
Matt Fleming [Mon, 16 Aug 2010 18:57:57 +0000 (18:57 +0000)]
Add ELF ObjectWriter and Streamer support.

I forgot to add these files in commit 111172.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111174 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoHookup ELF support for X86.
Matt Fleming [Mon, 16 Aug 2010 18:36:14 +0000 (18:36 +0000)]
Hookup ELF support for X86.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111173 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd ELF ObjectWriter and Streamer support.
Matt Fleming [Mon, 16 Aug 2010 18:35:43 +0000 (18:35 +0000)]
Add ELF ObjectWriter and Streamer support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111172 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoLayout helper function.
Matt Fleming [Mon, 16 Aug 2010 18:35:06 +0000 (18:35 +0000)]
Layout helper function.

Introduce a helper method to add a section to the end of a layout. This
will be used by the ELF ObjectWriter code to add the metadata sections
(symbol table, etc) to the end of an object file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111171 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRecord a symbol's size which is needed for ELF symbol tables.
Matt Fleming [Mon, 16 Aug 2010 18:34:31 +0000 (18:34 +0000)]
Record a symbol's size which is needed for ELF symbol tables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111170 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoELF entry size support.
Matt Fleming [Mon, 16 Aug 2010 18:33:46 +0000 (18:33 +0000)]
ELF entry size support.

Some ELF sections contain fixed-sized entries. Provide a way to record
the entry size of a section.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111169 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRename sat_shift operand to shift_imm, in preparation for using it for other
Bob Wilson [Mon, 16 Aug 2010 18:27:34 +0000 (18:27 +0000)]
Rename sat_shift operand to shift_imm, in preparation for using it for other
instructions besides saturate instructions.  No functional changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111168 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPartially revert r111155. It looks like MSVC is calling an operator<() that
Jakob Stoklund Olesen [Mon, 16 Aug 2010 18:24:54 +0000 (18:24 +0000)]
Partially revert r111155. It looks like MSVC is calling an operator<() that
clang says is unused.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111167 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotrack local frame size in MFI, not local to the pass, since PEI needs it.
Jim Grosbach [Mon, 16 Aug 2010 18:06:15 +0000 (18:06 +0000)]
track local frame size in MFI, not local to the pass, since PEI needs it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111164 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert r111031. The way LLVM defines loop invariance, the property of an
Dan Gohman [Mon, 16 Aug 2010 17:34:25 +0000 (17:34 +0000)]
Revert r111031. The way LLVM defines loop invariance, the property of an
expression being loop invariant is not equivalent to the property of
properly dominating the loop header.

Other optimizations have also made this optimization less important.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111160 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove unused functions.
Jakob Stoklund Olesen [Mon, 16 Aug 2010 17:18:20 +0000 (17:18 +0000)]
Remove unused functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111156 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove unused functions.
Jakob Stoklund Olesen [Mon, 16 Aug 2010 17:18:18 +0000 (17:18 +0000)]
Remove unused functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111155 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove unused code.
Bob Wilson [Mon, 16 Aug 2010 17:06:03 +0000 (17:06 +0000)]
Remove unused code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111154 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoConvert a test to use FileCheck.
Bob Wilson [Mon, 16 Aug 2010 17:05:27 +0000 (17:05 +0000)]
Convert a test to use FileCheck.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111153 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPlacate overzealous compiler warnings.
Dan Gohman [Mon, 16 Aug 2010 17:01:55 +0000 (17:01 +0000)]
Placate overzealous compiler warnings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111152 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTo create a copy of a SmallVector with an element removed from the
Dan Gohman [Mon, 16 Aug 2010 16:57:24 +0000 (16:57 +0000)]
To create a copy of a SmallVector with an element removed from the
middle, copy the elements in two groups, rather than copying all the
elements and then doing an erase on the middle of the result. These
are SmallVectors, so we shouldn't expect to hit dynamic allocation
in the common case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111151 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoInstall Embedded builds into usr/local. Radar 8313723.
Bob Wilson [Mon, 16 Aug 2010 16:39:59 +0000 (16:39 +0000)]
Install Embedded builds into usr/local.  Radar 8313723.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111149 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agosilence a vc2010 warning: " result of 32-bit shift implicitly converted to
Chris Lattner [Mon, 16 Aug 2010 16:35:20 +0000 (16:35 +0000)]
silence a vc2010 warning: " result of 32-bit shift implicitly converted to
64 bits (was 64-bit shift intended?)", pointed out by 'nobled' on llvmdev

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111148 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTidy whitespace.
Dan Gohman [Mon, 16 Aug 2010 16:34:09 +0000 (16:34 +0000)]
Tidy whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111147 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a comment.
Dan Gohman [Mon, 16 Aug 2010 16:31:39 +0000 (16:31 +0000)]
Add a comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111145 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse const_iterator in a few places.
Dan Gohman [Mon, 16 Aug 2010 16:30:01 +0000 (16:30 +0000)]
Use const_iterator in a few places.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111144 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse iterators instead of indices in a few more places.
Dan Gohman [Mon, 16 Aug 2010 16:27:53 +0000 (16:27 +0000)]
Use iterators instead of indices in a few more places.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111143 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMicro-optimize SCEVConstant comparison.
Dan Gohman [Mon, 16 Aug 2010 16:25:35 +0000 (16:25 +0000)]
Micro-optimize SCEVConstant comparison.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111142 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove SCEVNAryExpr's virtual member functions out of line, and convert
Dan Gohman [Mon, 16 Aug 2010 16:21:27 +0000 (16:21 +0000)]
Move SCEVNAryExpr's virtual member functions out of line, and convert
them to iterators.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111140 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse iterators instead of indices in simple cases.
Dan Gohman [Mon, 16 Aug 2010 16:16:11 +0000 (16:16 +0000)]
Use iterators instead of indices in simple cases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111138 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAvoid gratuitous inefficiency in ifndef NDEBUG code.
Dan Gohman [Mon, 16 Aug 2010 16:13:54 +0000 (16:13 +0000)]
Avoid gratuitous inefficiency in ifndef NDEBUG code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111137 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake one getAddExpr call when analyzing a+b+c+d+e+... instead of one
Dan Gohman [Mon, 16 Aug 2010 16:03:49 +0000 (16:03 +0000)]
Make one getAddExpr call when analyzing a+b+c+d+e+... instead of one
for each add instruction. Ditto for Mul.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111136 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDelete an unused function.
Dan Gohman [Mon, 16 Aug 2010 15:57:14 +0000 (15:57 +0000)]
Delete an unused function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111135 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoInstead of having CollectSubexpr's categorize operands as interesting or
Dan Gohman [Mon, 16 Aug 2010 15:50:00 +0000 (15:50 +0000)]
Instead of having CollectSubexpr's categorize operands as interesting or
uninteresting, just put all the operands on one list and make
GenerateReassociations make the decision about what's interesting.
This is simpler, and it avoids an extra ScalarEvolution::getAddExpr call.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111133 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPut add operands in ScalarEvolution-canonical order, when convenient.
Dan Gohman [Mon, 16 Aug 2010 15:39:27 +0000 (15:39 +0000)]
Put add operands in ScalarEvolution-canonical order, when convenient.
This isn't necessary, because ScalarEvolution sorts them anyway,
but it's tidier this way.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111132 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSpecialize FoldingSetTrait<SCEV>, providing implementations of node
Dan Gohman [Mon, 16 Aug 2010 15:31:45 +0000 (15:31 +0000)]
Specialize FoldingSetTrait<SCEV>, providing implementations of node
comparison and hash computation which don't require constructing
temporary ID values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111131 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd hooks to FoldingSetTrait to allow specializations to provide
Dan Gohman [Mon, 16 Aug 2010 15:30:39 +0000 (15:30 +0000)]
Add hooks to FoldingSetTrait to allow specializations to provide
implementations of equality comparison and hash computation. This
can be used to optimize node lookup by avoiding creating lots of
temporary ID values just for hashing and comparison purposes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111130 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTidy up whitespace in comments.
Dan Gohman [Mon, 16 Aug 2010 15:04:39 +0000 (15:04 +0000)]
Tidy up whitespace in comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111129 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoConstify FoldingSetNodeIDRef's Data.
Dan Gohman [Mon, 16 Aug 2010 15:03:24 +0000 (15:03 +0000)]
Constify FoldingSetNodeIDRef's Data.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111128 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReverse the order of GetNodeProfile's arguments, for consistency
Dan Gohman [Mon, 16 Aug 2010 14:53:42 +0000 (14:53 +0000)]
Reverse the order of GetNodeProfile's arguments, for consistency
with FoldingSetTrait::Profile.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111127 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix indentation in example code in a comment.
Dan Gohman [Mon, 16 Aug 2010 14:45:36 +0000 (14:45 +0000)]
Fix indentation in example code in a comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111125 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAvoid #include <ScalarEvolution.h> in LoopSimplify.cpp, which doesn't
Dan Gohman [Mon, 16 Aug 2010 14:44:03 +0000 (14:44 +0000)]
Avoid #include <ScalarEvolution.h> in LoopSimplify.cpp, which doesn't
actually use ScalarEvolution.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111124 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoInstead, teach SimplifyCFG to trim non-address-taken blocks from
Dan Gohman [Mon, 16 Aug 2010 14:41:14 +0000 (14:41 +0000)]
Instead, teach SimplifyCFG to trim non-address-taken blocks from
indirectbr destination lists.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111122 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert r111058, the lint check for indirectbr successors that aren't
Dan Gohman [Mon, 16 Aug 2010 14:39:19 +0000 (14:39 +0000)]
Revert r111058, the lint check for indirectbr successors that aren't
address-taken. This can occur normally, if the code which took the
address got DCEd.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111121 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTest expects SSE, give him SSE.
Benjamin Kramer [Sun, 15 Aug 2010 23:32:03 +0000 (23:32 +0000)]
Test expects SSE, give him SSE.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111115 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdated LLVMLibDeps.cmake
Oscar Fuentes [Sun, 15 Aug 2010 22:14:42 +0000 (22:14 +0000)]
Updated LLVMLibDeps.cmake

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111112 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCMake: Improved COMMENT on a custom command
Oscar Fuentes [Sun, 15 Aug 2010 22:14:36 +0000 (22:14 +0000)]
CMake: Improved COMMENT on a custom command

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111111 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRestore arch on these test, they fail on arm.
Benjamin Kramer [Sun, 15 Aug 2010 20:42:56 +0000 (20:42 +0000)]
Restore arch on these test, they fail on arm.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111109 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMark as XFAIL on darwin 8. PR 7886.
Dale Johannesen [Sun, 15 Aug 2010 19:40:29 +0000 (19:40 +0000)]
Mark as XFAIL on darwin 8.  PR 7886.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111108 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdated the GenLibDeps -> LLVMLibDeps.cmake transformation example.
Oscar Fuentes [Sun, 15 Aug 2010 15:08:27 +0000 (15:08 +0000)]
Updated the GenLibDeps -> LLVMLibDeps.cmake transformation example.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111104 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert r111082. No warnings for this common pattern.
Argyrios Kyrtzidis [Sun, 15 Aug 2010 10:27:23 +0000 (10:27 +0000)]
Revert r111082. No warnings for this common pattern.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111102 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate tests.
Mikhail Glushenkov [Sun, 15 Aug 2010 07:07:24 +0000 (07:07 +0000)]
Update tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111096 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRegenerate.
Mikhail Glushenkov [Sun, 15 Aug 2010 07:07:17 +0000 (07:07 +0000)]
Regenerate.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111095 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agollvmc: remove dynamic plugins.
Mikhail Glushenkov [Sun, 15 Aug 2010 07:07:12 +0000 (07:07 +0000)]
llvmc: remove dynamic plugins.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111094 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRework how the non-sse2 memory barrier is lowered so that the
Eric Christopher [Sat, 14 Aug 2010 21:51:50 +0000 (21:51 +0000)]
Rework how the non-sse2 memory barrier is lowered so that the
encoding is correct for the built-in assembler.

Based on a patch from Chris.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111083 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd ATTRIBUTE_UNUSED to methods that are not supposed to be used.
Argyrios Kyrtzidis [Sat, 14 Aug 2010 21:35:10 +0000 (21:35 +0000)]
Add ATTRIBUTE_UNUSED to methods that are not supposed to be used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111082 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoimprove indentation
Chris Lattner [Sat, 14 Aug 2010 17:26:09 +0000 (17:26 +0000)]
improve indentation

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111073 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoT2I_rbin_irs rr variant is for disassembly only, so don't provide a pattern.
Bob Wilson [Sat, 14 Aug 2010 03:18:29 +0000 (03:18 +0000)]
T2I_rbin_irs rr variant is for disassembly only, so don't provide a pattern.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111068 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate CMake build.
Ted Kremenek [Sat, 14 Aug 2010 01:55:09 +0000 (01:55 +0000)]
Update CMake build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111063 91177308-0d34-0410-b5e6-96231b3b80d8