oota-llvm.git
17 years agoPut GVN-PRE in all the right places.
Owen Anderson [Tue, 29 May 2007 23:36:32 +0000 (23:36 +0000)]
Put GVN-PRE in all the right places.

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

17 years agoFor VFP2 fldm, fstm instructions, the condition code is printed after the address...
Evan Cheng [Tue, 29 May 2007 23:34:19 +0000 (23:34 +0000)]
For VFP2 fldm, fstm instructions, the condition code is printed after the address mode and size specifier. e.g. fstmiaseq, not fstmeqias.

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

17 years agoFix a typo
Owen Anderson [Tue, 29 May 2007 23:34:14 +0000 (23:34 +0000)]
Fix a typo

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

17 years agoFor ldrb, strh, etc., the condition code is before the width specifier. e.g. streqh...
Evan Cheng [Tue, 29 May 2007 23:32:06 +0000 (23:32 +0000)]
For ldrb, strh, etc., the condition code is before the width specifier. e.g. streqh, not strheq.

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

17 years agoRe-fix a bug, where I was now being too aggressive.
Owen Anderson [Tue, 29 May 2007 23:26:30 +0000 (23:26 +0000)]
Re-fix a bug, where I was now being too aggressive.

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

17 years agoUse proper debugging facilities so other people don't have to look at my commented-out
Owen Anderson [Tue, 29 May 2007 23:15:21 +0000 (23:15 +0000)]
Use proper debugging facilities so other people don't have to look at my commented-out
debugging lines.

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

17 years agoComment debug code out that I accidentally uncommented last time.
Owen Anderson [Tue, 29 May 2007 22:43:03 +0000 (22:43 +0000)]
Comment debug code out that I accidentally uncommented last time.

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

17 years agoAdd a place where I missed using the maximal set. Note that using the maximal
Owen Anderson [Tue, 29 May 2007 22:35:41 +0000 (22:35 +0000)]
Add a place where I missed using the maximal set.  Note that using the maximal
set this way is _SLOW_.  Somewhere down the line, I'll look at speeding it up.

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

17 years agoIf there is an empty block between a source and its successor block, it still require...
Evan Cheng [Tue, 29 May 2007 22:31:16 +0000 (22:31 +0000)]
If there is an empty block between a source and its successor block, it still requires a unconditional branch.

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

17 years agoVery first part of a GVN-PRE implementation. It currently performs a bunch of analys...
Owen Anderson [Tue, 29 May 2007 21:53:49 +0000 (21:53 +0000)]
Very first part of a GVN-PRE implementation.  It currently performs a bunch of analysis, and nothing more.  It is also quite slow for the moment.  However,
it should give a sense of what's going on.

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

17 years agoAdd missing const qualifiers.
Evan Cheng [Tue, 29 May 2007 18:42:18 +0000 (18:42 +0000)]
Add missing const qualifiers.

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

17 years agoAdd missing const qualifiers.
Evan Cheng [Tue, 29 May 2007 18:35:22 +0000 (18:35 +0000)]
Add missing const qualifiers.

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

17 years agoImplementation of compilation callback in PPC ELF32
Nicolas Geoffray [Tue, 29 May 2007 16:33:18 +0000 (16:33 +0000)]
Implementation of compilation callback in PPC ELF32

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

17 years agomore fixes to C code.
Chris Lattner [Tue, 29 May 2007 15:43:56 +0000 (15:43 +0000)]
more fixes to C code.

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

17 years agoFixed some formatting.
Bill Wendling [Tue, 29 May 2007 09:42:13 +0000 (09:42 +0000)]
Fixed some formatting.

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

17 years agoAdded "llvmc" to the FAQ.
Bill Wendling [Tue, 29 May 2007 09:35:34 +0000 (09:35 +0000)]
Added "llvmc" to the FAQ.

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

17 years agoAdded "doc_class" div tags to code segments.
Bill Wendling [Tue, 29 May 2007 09:24:33 +0000 (09:24 +0000)]
Added "doc_class" div tags to code segments.

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

17 years agoFix for PR1452. Removed "define" keyword from the C code. Added "<div
Bill Wendling [Tue, 29 May 2007 09:04:49 +0000 (09:04 +0000)]
Fix for PR1452. Removed "define" keyword from the C code. Added "<div
class="doc_code">" to code examples.

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

17 years agoAdd a new LLVMBuilder class, which makes it simpler and more uniform to
Chris Lattner [Sun, 27 May 2007 15:09:34 +0000 (15:09 +0000)]
Add a new LLVMBuilder class, which makes it simpler and more uniform to
create large amounts of instructions by separating the insertion point
logic from the logic of what to create.

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

17 years agoCorrect the logic in LowerPartSet which cleared the bits from 0 to low-1.
Zhou Sheng [Sat, 26 May 2007 03:43:13 +0000 (03:43 +0000)]
Correct the logic in LowerPartSet which cleared the bits from 0 to low-1.

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

17 years agotighten up recursion depth again
Chris Lattner [Fri, 25 May 2007 02:19:06 +0000 (02:19 +0000)]
tighten up recursion depth again

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

17 years agoDisable Tail Merging for now.
Devang Patel [Fri, 25 May 2007 01:00:24 +0000 (01:00 +0000)]
Disable Tail  Merging for now.

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

17 years agoSilly boog.
Evan Cheng [Fri, 25 May 2007 00:59:01 +0000 (00:59 +0000)]
Silly boog.

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

17 years agoremove contradiction owen noticed
Chris Lattner [Thu, 24 May 2007 19:13:27 +0000 (19:13 +0000)]
remove contradiction owen noticed

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

17 years agoFix PR1446 by not scalarrepl'ing giant structures.
Chris Lattner [Thu, 24 May 2007 18:43:04 +0000 (18:43 +0000)]
Fix PR1446 by not scalarrepl'ing giant structures.

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

17 years agotestcase for PR1446
Chris Lattner [Thu, 24 May 2007 18:42:47 +0000 (18:42 +0000)]
testcase for PR1446

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

17 years agoBlocks that cond-br and uncond-br/fallthrough to same block should have
Dale Johannesen [Thu, 24 May 2007 18:31:55 +0000 (18:31 +0000)]
Blocks that cond-br and uncond-br/fallthrough to same block should have
only one successor.

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

17 years agoFix for PR1444: do not create two successors to the same block.
Dale Johannesen [Thu, 24 May 2007 17:39:32 +0000 (17:39 +0000)]
Fix for PR1444: do not create two successors to the same block.
Temporarily, this breaks CodeGen/Generic/2006-02-12-InsertLibraryCall.ll
by exposing an unrelated latent problem; working on that.

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

17 years agoCompute the correct word number.
Zhou Sheng [Thu, 24 May 2007 15:03:18 +0000 (15:03 +0000)]
Compute the correct word number.

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

17 years agoMinor comment cleanups.
Dan Gohman [Thu, 24 May 2007 14:36:04 +0000 (14:36 +0000)]
Minor comment cleanups.

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

17 years agoAdd explicit qualification for namespace MVT members.
Dan Gohman [Thu, 24 May 2007 14:33:05 +0000 (14:33 +0000)]
Add explicit qualification for namespace MVT members.

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

17 years agoAdd cases for v2f32.
Dan Gohman [Thu, 24 May 2007 14:29:12 +0000 (14:29 +0000)]
Add cases for v2f32.

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

17 years agoFix a typo that caused combiner to create mal-formed pre-indexed store where value...
Evan Cheng [Thu, 24 May 2007 02:35:39 +0000 (02:35 +0000)]
Fix a typo that caused combiner to create mal-formed pre-indexed store where value store is the same as the base pointer.

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

17 years agoAdd a new test case.
Evan Cheng [Thu, 24 May 2007 02:31:15 +0000 (02:31 +0000)]
Add a new test case.

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

17 years agotail merging shrinks this code a bit. Could do more in future.
Dale Johannesen [Wed, 23 May 2007 21:09:26 +0000 (21:09 +0000)]
tail merging shrinks this code a bit.  Could do more in future.

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

17 years agoTwo tail merging improvements:
Dale Johannesen [Wed, 23 May 2007 21:07:20 +0000 (21:07 +0000)]
Two tail merging improvements:
When considering blocks with more than 2 predecessors, merge the block with
the largest number of matching insns, rather than the first block found.
Considering that 1 matching insn is enough to show a win for candidates that
already end with a branch.

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

17 years agoAdd dump() routines for debugging assistance.
Devang Patel [Wed, 23 May 2007 19:55:36 +0000 (19:55 +0000)]
Add dump() routines for debugging assistance.

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

17 years agoMark all calls as "could throw", when exceptions are enabled. Emit necessary LP info...
Anton Korobeynikov [Wed, 23 May 2007 11:08:31 +0000 (11:08 +0000)]
Mark all calls as "could throw", when exceptions are enabled. Emit necessary LP info too. This fixes PR1439

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

17 years agoprevent exponential recursion in isNegatibleForFree
Chris Lattner [Wed, 23 May 2007 07:35:22 +0000 (07:35 +0000)]
prevent exponential recursion in isNegatibleForFree

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

17 years agoPreliminary iterative if-conversion support.
Evan Cheng [Wed, 23 May 2007 07:23:16 +0000 (07:23 +0000)]
Preliminary iterative if-conversion support.

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

17 years agoHooks for predication support.
Evan Cheng [Wed, 23 May 2007 07:22:05 +0000 (07:22 +0000)]
Hooks for predication support.

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

17 years agoRename a parameter.
Evan Cheng [Wed, 23 May 2007 07:21:11 +0000 (07:21 +0000)]
Rename a parameter.

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

17 years agoAdd a couple of target hooks for predication.
Evan Cheng [Wed, 23 May 2007 07:19:12 +0000 (07:19 +0000)]
Add a couple of target hooks for predication.

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

17 years agowhen merging two alias sets together, be sure to propagate the volatility of
Chris Lattner [Wed, 23 May 2007 06:36:35 +0000 (06:36 +0000)]
when merging two alias sets together, be sure to propagate the volatility of
the inner set.  This fixes PR1435 and Transforms/LICM/2007-05-22-VolatileSink.ll

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

17 years agonew testcase for PR1435
Chris Lattner [Wed, 23 May 2007 06:35:52 +0000 (06:35 +0000)]
new testcase for PR1435

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

17 years agomake these accessors private.
Chris Lattner [Wed, 23 May 2007 05:46:04 +0000 (05:46 +0000)]
make these accessors private.

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

17 years agoIf user wants to run instcombine twice, do not block it.
Devang Patel [Wed, 23 May 2007 05:08:52 +0000 (05:08 +0000)]
If user wants to run instcombine twice, do not block it.

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

17 years agofinal updates
Chris Lattner [Wed, 23 May 2007 04:39:32 +0000 (04:39 +0000)]
final updates

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

17 years agofix a miscompilation when passing a float through varargs
Chris Lattner [Wed, 23 May 2007 01:17:04 +0000 (01:17 +0000)]
fix a miscompilation when passing a float through varargs

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

17 years agoThe Intrinsic::getDeclaration function's Tys parameter only contains the
Reid Spencer [Tue, 22 May 2007 19:30:31 +0000 (19:30 +0000)]
The Intrinsic::getDeclaration function's Tys parameter only contains the
types of the iAny types involved in the overloaded intrinsic. Thus, we
can't use the argument number as the index but have to count them separately
in order to index Tys correctly. This patch rectifies this situation.

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

17 years agoReinstate the patch for escaping non-printing characters and allow for
Reid Spencer [Tue, 22 May 2007 19:27:35 +0000 (19:27 +0000)]
Reinstate the patch for escaping non-printing characters and allow for
\\ to escape \. All these cases are now handled by the AsmParser.

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

17 years agoRegenerate.
Reid Spencer [Tue, 22 May 2007 19:08:16 +0000 (19:08 +0000)]
Regenerate.

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

17 years agoDon't allow the UnEscape code to read or write beyond the end of yytext.
Reid Spencer [Tue, 22 May 2007 19:07:45 +0000 (19:07 +0000)]
Don't allow the UnEscape code to read or write beyond the end of yytext.
Make sure we convert \\ into \.

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

17 years agoRegenerate.
Reid Spencer [Tue, 22 May 2007 18:52:55 +0000 (18:52 +0000)]
Regenerate.

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

17 years agoImplement full unescaping of escaped hex characters in all quoted identifiers
Reid Spencer [Tue, 22 May 2007 18:52:21 +0000 (18:52 +0000)]
Implement full unescaping of escaped hex characters in all quoted identifiers
and strings.

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

17 years agoDocument boolOrDefault and its parser.
Dale Johannesen [Tue, 22 May 2007 18:32:34 +0000 (18:32 +0000)]
Document boolOrDefault and its parser.

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

17 years agoname change requested by review of previous patch
Dale Johannesen [Tue, 22 May 2007 18:31:04 +0000 (18:31 +0000)]
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

17 years agoSilence a warning.
Owen Anderson [Tue, 22 May 2007 18:13:40 +0000 (18:13 +0000)]
Silence a warning.

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

17 years agonew testcases for -enable-tail-merge default handling
Dale Johannesen [Tue, 22 May 2007 17:19:23 +0000 (17:19 +0000)]
new testcases for -enable-tail-merge default handling

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

17 years agoTest assumes tail merging is off; this must now be explicit.
Dale Johannesen [Tue, 22 May 2007 17:18:05 +0000 (17:18 +0000)]
Test assumes tail merging is off; this must now be explicit.

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

17 years agoMake tail merging the default, except on powerPC. There was no prior art
Dale Johannesen [Tue, 22 May 2007 17:14:46 +0000 (17:14 +0000)]
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

17 years agotemporarily revert reid's asmwriter patch, it is missing the asmparser piece
Chris Lattner [Tue, 22 May 2007 07:00:50 +0000 (07:00 +0000)]
temporarily revert reid's asmwriter patch, it is missing the asmparser piece
that decodes the escape sequences, thus breaking all cases that use them.

This fixes test/Assembler/2007-05-21-Escape.ll

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

17 years agonew testcase for a recent regression
Chris Lattner [Tue, 22 May 2007 07:00:38 +0000 (07:00 +0000)]
new testcase for a recent regression

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

17 years agoupdate comment
Chris Lattner [Tue, 22 May 2007 06:56:32 +0000 (06:56 +0000)]
update comment

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

17 years agoregenerate
Chris Lattner [Tue, 22 May 2007 06:47:55 +0000 (06:47 +0000)]
regenerate

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

17 years agosimplify code
Chris Lattner [Tue, 22 May 2007 06:47:11 +0000 (06:47 +0000)]
simplify code

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

17 years agoNightlyTest.pl does not exist.
Tanya Lattner [Tue, 22 May 2007 06:12:51 +0000 (06:12 +0000)]
NightlyTest.pl does not exist.

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

17 years agoAdding 2.0 release
Tanya Lattner [Tue, 22 May 2007 06:06:22 +0000 (06:06 +0000)]
Adding 2.0 release

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

17 years agoWe only need to specify the most-implied feature for an architecture.
Bill Wendling [Tue, 22 May 2007 05:15:37 +0000 (05:15 +0000)]
We only need to specify the most-implied feature for an architecture.

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

17 years agoConsistency.
Evan Cheng [Tue, 22 May 2007 01:21:58 +0000 (01:21 +0000)]
Consistency.

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

17 years agoAdd test for PR1259.
Evan Cheng [Mon, 21 May 2007 23:30:33 +0000 (23:30 +0000)]
Add test for PR1259.

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

17 years agoFix some -march=thumb regressions. tBR_JTr is not predicable.
Evan Cheng [Mon, 21 May 2007 23:17:32 +0000 (23:17 +0000)]
Fix some -march=thumb regressions. tBR_JTr is not predicable.

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

17 years agoUse AXI3 not AXI2 for appropriate PIC PC-relative loads and stores. Cosmetic.
Dale Johannesen [Mon, 21 May 2007 22:42:04 +0000 (22:42 +0000)]
Use AXI3 not AXI2 for appropriate PIC PC-relative loads and stores.  Cosmetic.

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

17 years agoIf-convert early exit blocks (returns, etc.); bug fixes, etc.
Evan Cheng [Mon, 21 May 2007 22:22:58 +0000 (22:22 +0000)]
If-convert early exit blocks (returns, etc.); bug fixes, etc.

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

17 years agoAdd some patterns for PIC PC-relative loads and stores.
Dale Johannesen [Mon, 21 May 2007 22:14:33 +0000 (22:14 +0000)]
Add some patterns for PIC PC-relative loads and stores.

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

17 years agoBlockHasNoFallThrough() now returns true if block ends with a return instruction...
Evan Cheng [Mon, 21 May 2007 18:56:31 +0000 (18:56 +0000)]
BlockHasNoFallThrough() now returns true if block ends with a return instruction; AnalyzeBranch() should ignore predicated instructionsd.

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

17 years agoOnly emit one entry in the exception action table for each action, even if
Duncan Sands [Mon, 21 May 2007 18:50:28 +0000 (18:50 +0000)]
Only emit one entry in the exception action table for each action, even if
it occurs for multiple landing pads.

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

17 years agoBlockHasNoFallThrough() now returns true if block ends with a return instruction.
Evan Cheng [Mon, 21 May 2007 18:44:17 +0000 (18:44 +0000)]
BlockHasNoFallThrough() now returns true if block ends with a return instruction.

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

17 years agoUpdate
Bill Wendling [Sun, 20 May 2007 19:56:24 +0000 (19:56 +0000)]
Update

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

17 years agoGet the order of the hext digits right!
Reid Spencer [Sat, 19 May 2007 14:44:42 +0000 (14:44 +0000)]
Get the order of the hext digits right!

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

17 years agoAdjust how LLVM names are produced:
Reid Spencer [Sat, 19 May 2007 07:25:21 +0000 (07:25 +0000)]
Adjust how LLVM names are produced:
1. Always use % for local and @ for global.
2. Replace NameNeedsQuotes with QuoteNameIfNeeded so that any adjustments
   to the name can be done in one pass.
3. Implement generation of hex escapes so we don't get "wonky" characters
   in the output.

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

17 years agoMake sure we can round-trip an escaped value in a name.
Reid Spencer [Sat, 19 May 2007 07:22:24 +0000 (07:22 +0000)]
Make sure we can round-trip an escaped value in a name.

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

17 years agoRegenerate
Reid Spencer [Sat, 19 May 2007 07:22:10 +0000 (07:22 +0000)]
Regenerate

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

17 years agoMake the %"..." syntax legal for local name. This just makes it symmetric
Reid Spencer [Sat, 19 May 2007 07:21:26 +0000 (07:21 +0000)]
Make the %"..." syntax legal for local name. This just makes it symmetric
with global names which can already be @"..."

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

17 years agoFix Transforms/InstCombine/2007-05-18-CastFoldBug.ll, a bug that devastates
Chris Lattner [Sat, 19 May 2007 06:51:32 +0000 (06:51 +0000)]
Fix Transforms/InstCombine/2007-05-18-CastFoldBug.ll, a bug that devastates
objc code due to the way the FE lowers objc message sends.

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

17 years agonew testcase
Chris Lattner [Sat, 19 May 2007 06:50:37 +0000 (06:50 +0000)]
new testcase

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

17 years agoOn Linux platforms and at optimization levels -O1 and above, llvm-gcc can
Reid Spencer [Sat, 19 May 2007 01:36:17 +0000 (01:36 +0000)]
On Linux platforms and at optimization levels -O1 and above, llvm-gcc can
turn "putchar" calls into _IO_putc calls which is a lower-level interface.
This patch allows these calls to be executed by lli in interpreter mode.

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

17 years agoadd source
Chris Lattner [Sat, 19 May 2007 01:22:52 +0000 (01:22 +0000)]
add source

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

17 years agoHandle negative strides much more optimally. This compiles X86/lsr-negative-stride.ll
Chris Lattner [Sat, 19 May 2007 01:22:21 +0000 (01:22 +0000)]
Handle negative strides much more optimally.  This compiles X86/lsr-negative-stride.ll
into:

_t:
        movl 8(%esp), %ecx
        movl 4(%esp), %eax
        cmpl %ecx, %eax
        je LBB1_3       #bb17
LBB1_1: #bb
        cmpl %ecx, %eax
        jg LBB1_4       #cond_true
LBB1_2: #cond_false
        subl %eax, %ecx
        cmpl %ecx, %eax
        jne LBB1_1      #bb
LBB1_3: #bb17
        ret
LBB1_4: #cond_true
        subl %ecx, %eax
        cmpl %ecx, %eax
        jne LBB1_1      #bb
        jmp LBB1_3      #bb17

instead of:

_t:
        subl $4, %esp
        movl %esi, (%esp)
        movl 12(%esp), %ecx
        movl 8(%esp), %eax
        cmpl %ecx, %eax
        je LBB1_4       #bb17
LBB1_1: #bb.outer
        movl %ecx, %edx
        negl %edx
LBB1_2: #bb
        cmpl %ecx, %eax
        jle LBB1_5      #cond_false
LBB1_3: #cond_true
        addl %edx, %eax
        cmpl %ecx, %eax
        jne LBB1_2      #bb
LBB1_4: #bb17
        movl (%esp), %esi
        addl $4, %esp
        ret
LBB1_5: #cond_false
        movl %ecx, %edx
        subl %eax, %edx
        movl %eax, %esi
        addl %esi, %esi
        cmpl %ecx, %esi
        je LBB1_4       #bb17
LBB1_6: #cond_false.bb.outer_crit_edge
        movl %edx, %ecx
        jmp LBB1_1      #bb.outer

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

17 years agonew testcase
Chris Lattner [Sat, 19 May 2007 01:21:39 +0000 (01:21 +0000)]
new testcase

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

17 years agosame patch as the previous one, but the symmetric case
Chris Lattner [Sat, 19 May 2007 00:46:51 +0000 (00:46 +0000)]
same patch as the previous one, but the symmetric case

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

17 years agoDisable the (A == (B-A)) -> 2*A == B xform when the sub has multiple uses (in
Chris Lattner [Sat, 19 May 2007 00:43:44 +0000 (00:43 +0000)]
Disable the (A == (B-A)) -> 2*A == B xform when the sub has multiple uses (in
this case, the xform introduces an extra operation).  This compiles
PowerPC/compare-duplicate.ll into:

_test:
        subf r2, r3, r4
        cmplw cr0, r2, r3
        bne cr0, LBB1_2 ;F

instead of:

_test:
        slwi r2, r3, 1
        subf r3, r3, r4
        cmplw cr0, r4, r2
        bne cr0, LBB1_2 ;F

This is target independent of course.

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

17 years agonew testcase
Chris Lattner [Sat, 19 May 2007 00:41:40 +0000 (00:41 +0000)]
new testcase

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

17 years agoFix an assertion introduced by my last change to the toString method. We
Reid Spencer [Sat, 19 May 2007 00:29:55 +0000 (00:29 +0000)]
Fix an assertion introduced by my last change to the toString method. We
can't use getZExtValue() to extract the low order bits for each digit.
Instead, we need to access the low order word directly.

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

17 years agoApply this patch:
Dan Gohman [Fri, 18 May 2007 23:21:46 +0000 (23:21 +0000)]
Apply this patch:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070514/049845.html

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

17 years agoadd a note
Chris Lattner [Fri, 18 May 2007 20:18:14 +0000 (20:18 +0000)]
add a note

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

17 years agoAdd a testcase for unrolling loops with unknown tripcounts.
Dan Gohman [Fri, 18 May 2007 19:59:23 +0000 (19:59 +0000)]
Add a testcase for unrolling loops with unknown tripcounts.

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

17 years agoClean up.
Evan Cheng [Fri, 18 May 2007 19:32:08 +0000 (19:32 +0000)]
Clean up.

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

17 years agoChange to depth-first traversal.
Evan Cheng [Fri, 18 May 2007 19:26:33 +0000 (19:26 +0000)]
Change to depth-first traversal.

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

17 years agoDocument an inefficiency in tail merging.
Dale Johannesen [Fri, 18 May 2007 18:46:40 +0000 (18:46 +0000)]
Document an inefficiency in tail merging.

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