Dan Gohman
948c8a3e3d
When checking whether the special handling for an addrec increment which
...
doesn't dominate the header is needed, don't check whether the increment
expression has computable loop evolution. While the operands of an
addrec are required to be loop-invariant, they're not required to
dominate any part of the loop. This fixes PR6914.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102389 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 21:46:36 +00:00
Dan Gohman
585c40129f
Add a comment to this test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102387 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 21:37:43 +00:00
Jeffrey Yasskin
93e066d0e2
Consolidate the description of volatile operations, now that some of the
...
intrinsics have volatile semantics in addition to the load and store
instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102384 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 21:21:24 +00:00
Dan Gohman
c30f6e1c89
Branching or switching on trap transfers imminent undefined behavior
...
onto control-dependent instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102381 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 20:54:53 +00:00
Dale Johannesen
925965e6ba
Remove crufty comments.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102380 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 20:48:54 +00:00
Gabor Greif
28034cde44
add some typewriter tags
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102378 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 20:46:03 +00:00
Dan Gohman
c68ce066a5
Fix HTML errors that Jeffery Yasskin noticed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102376 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 20:21:21 +00:00
Dale Johannesen
3f282aa94b
Handle target-specific form of DBG_VALUE in AsmPrinter.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102373 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 20:07:31 +00:00
Dale Johannesen
fdb42fa5fe
Add DBG_VALUE handling for byval parameters; this
...
produces a comment on targets that support it, but
the Dwarf writer is not hooked up yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102372 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 20:06:49 +00:00
Dale Johannesen
efc3a6348a
Add PPC AsmPrinter handling for target-specific form of
...
DBG_VALUE, and a cautionary comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102371 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 20:05:01 +00:00
Evan Cheng
f48023b3cf
Insert dbg_value instructions for function entry block liveins (i.e. function arguments).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102368 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 19:16:00 +00:00
Evan Cheng
552f09a0d7
Promoting 16-bit cmp / test aren't free. Don't do it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102366 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 19:06:11 +00:00
Chris Lattner
567dd1f5d0
fix PR6921 a different way. Intead of increasing the
...
alignment of globals with a specified alignment, we fix
common variables to obey their alignment. Add a comment
explaining why this behavior is important.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102365 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 18:46:46 +00:00
Evan Cheng
6fa7636e61
Re-enable 102323 with fix: do not update dbg_value's with incorrect frame indices when the live interval are being re-materialized.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102361 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 18:37:21 +00:00
Chris Lattner
f74e25f60c
Revert r102300/102301, which serious broke objc apps.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102359 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 18:30:45 +00:00
Chris Lattner
8581c260d3
fix PR6940: sitofp(undef) folds to 0.0, not undef.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102358 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 18:21:23 +00:00
Chris Lattner
095539f97c
wrap some long lines.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102354 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 17:42:18 +00:00
Bob Wilson
211678a0d7
Update MachineSSAUpdater with the same changes I made for the IR-level
...
SSAUpdater. I'm going to try to refactor this to share most of the code
between them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102353 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 17:40:49 +00:00
Chris Lattner
7c8e7965e1
add GHC, thanks to David Terei
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102352 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 17:38:10 +00:00
Evan Cheng
6cd4b34261
Temporary disable spiller modifying dbg_value. It's breaking build.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102327 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 08:24:07 +00:00
Evan Cheng
fc4d530ad6
Remove a redundant comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102326 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 08:16:57 +00:00
Evan Cheng
0965217e74
Add PPC specific emitFrameIndexDebugValue.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102325 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 07:39:36 +00:00
Evan Cheng
62b50656ce
Add ARM specific emitFrameIndexDebugValue.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102324 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 07:39:25 +00:00
Evan Cheng
962021bc7f
- Move TargetLowering::EmitTargetCodeForFrameDebugValue to TargetInstrInfo and rename it to emitFrameIndexDebugValue.
...
- Teach spiller to modify DBG_VALUE instructions to reference spill slots.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102323 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-26 07:38:55 +00:00
Dale Johannesen
f822e733af
Stop abusing EmitInstrWithCustomInserter for target-dependent
...
form of DEBUG_VALUE, as it doesn't have reasonable default
behavior for unsupported targets. Add a new hook instead.
No functional change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102320 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 21:33:54 +00:00
Gabor Greif
e32adf53b2
another typo pointed out by sajd
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102319 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 21:30:22 +00:00
Gabor Greif
1440dbe4c2
fix two typos pointed out by sajd
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102318 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 21:27:54 +00:00
Dale Johannesen
7dc7840850
Add comment re byval args. Doesn't actually work this way yet.
...
xs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102316 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 21:03:54 +00:00
David Chisnall
8e0bd80e38
Added bullet about GNUstep Objective-C ABI support to the Clang section of the release notes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102309 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 19:13:33 +00:00
Chris Lattner
84c6e60c02
testcase for PR6913
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102303 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 05:51:14 +00:00
Chris Lattner
ff1c0444ea
this passes now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102301 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 05:49:31 +00:00
Chris Lattner
044698b39a
Fix PR6921: globals were not getting correctly rounded up to their
...
preferred alignment unless they were common or some other special
case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102300 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 05:30:43 +00:00
Chris Lattner
73382423f2
silence a warning, patch by "mike".
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102297 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 04:44:26 +00:00
Chris Lattner
d89673c028
remove #if 1's.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102296 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 04:43:02 +00:00
Dan Gohman
39ed6789c5
Fix an autoconf bug: The second argument to AC_LANG_PROGRAM is code that
...
gets placed inside a main function, and should not itself be a main
function. This is silently hidden in GCC-hosted builds because the
inner main looks like a nested function declaration, which GCC supports.
In builds with compilers which do not support nested functions (by default),
this was causing an error, which caused these autoconf checks to fail,
leaving their options disabled.
This fixes test/Feature/load_module.ll on x86_64-unknown-linux-gnu
llvm-gcc selfhost builds, among other things.
This also includes a regenerated configure, as the diff is small and telling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102288 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-25 00:12:20 +00:00
Dan Gohman
698cbcb0a4
PHI nodes also do not necessarily return trap with a trap operand.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102278 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 22:15:58 +00:00
Nick Lewycky
1f048649e3
Fix typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102276 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 22:01:40 +00:00
Nick Lewycky
ec42dd6e19
Use provided llvm-defined variables instead of twisting user-controlled knobs.
...
No visible change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102240 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 05:07:24 +00:00
Nick Lewycky
395af84652
Don't touch CXXFLAGS. If it's set in the environment then sub-makes will see
...
the variable that we set as though it came from the user. Fixes PR6835.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102239 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 04:56:34 +00:00
Evan Cheng
c82c20b315
Avoid promoting a i16 node if it would eliminate a (store (op (load))) opportunity.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102237 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 04:44:57 +00:00
Evan Cheng
95c57ea182
When a load operand is promoted to an extload, replace other uses with uses of extload result truncated.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102236 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 04:43:44 +00:00
Dan Gohman
1d367988e2
Generalize LSR's OptimizeMax to handle the new kinds of max expressions
...
that indvars may use, now that indvars is recognizing le and ge loops.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102235 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 03:13:44 +00:00
Dan Gohman
9f93d30a26
ScalarEvolution support for <= and >= loops.
...
Also, generalize ScalarEvolutions's min and max recognition to handle
some new forms of min and max that this change makes more common.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102234 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 03:09:42 +00:00
Dan Gohman
d19bba69ad
Use SimplifyICmpOperands in isKnownPredicate too.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102233 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 01:38:36 +00:00
Dan Gohman
d4da5af271
Update isImpliedCond to use the new SimplifyICmpOperands utility.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102232 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 01:34:53 +00:00
Dan Gohman
e979650fa5
Add a new utility function SimplifyICmpOperands. Much of this code is
...
refactored out of ScalarEvolution::isImpliedCond, which will be updated
to use this new utility routine soon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102229 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 01:28:42 +00:00
Dan Gohman
a7bcef1bce
Apply a fix for a vector setcc dagcombine from Jan Sjodin. No
...
testcase yet, as the testcase now fails downstream.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102228 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 01:17:30 +00:00
Sean Callanan
a870256d7d
Fixed edis to tokenize instructions with no
...
operands correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102227 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 01:00:16 +00:00
Jim Grosbach
37ff5c66db
cross-build Makefile needs to unset CFLAGS/CXXFLAGS when building the build-side utilities since the flags will be for the cross-compiler.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102225 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-24 00:46:14 +00:00
Chris Lattner
d46316e7ae
no longer xfail
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102220 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-23 22:39:33 +00:00