oota-llvm.git
15 years agov4, v5 does not support sxtb / sxth.
Evan Cheng [Fri, 28 Aug 2009 00:31:43 +0000 (00:31 +0000)]
v4, v5 does not support sxtb / sxth.

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

15 years agoDisable optional bindings for Apple-style builds.
Bob Wilson [Fri, 28 Aug 2009 00:21:13 +0000 (00:21 +0000)]
Disable optional bindings for Apple-style builds.

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

15 years agoRevert 76080. This broke some powerpc cross compiles.
Bob Wilson [Fri, 28 Aug 2009 00:10:15 +0000 (00:10 +0000)]
Revert 76080.  This broke some powerpc cross compiles.
It also makes the llvmCore build dependent on whatever version of llvm-gcc
happens to be installed on the build machine.

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

15 years agoRevert r80305, I forgot a dependent change.
Daniel Dunbar [Thu, 27 Aug 2009 23:58:10 +0000 (23:58 +0000)]
Revert r80305, I forgot a dependent change.

--- Reverse-merging r80305 into '.':
U    tools/llvm-mc/AsmParser.cpp

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

15 years agoClosure is a very generic name. Use AppleBlock instead.
Devang Patel [Thu, 27 Aug 2009 23:51:51 +0000 (23:51 +0000)]
Closure is a very generic name. Use AppleBlock instead.

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

15 years agollvm-mc: Unique sections in .zerofill.
Daniel Dunbar [Thu, 27 Aug 2009 23:45:06 +0000 (23:45 +0000)]
llvm-mc: Unique sections in .zerofill.

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

15 years agoeliminate all 80-col violations that I have introduced in my recent checkins (and...
Gabor Greif [Thu, 27 Aug 2009 23:44:33 +0000 (23:44 +0000)]
eliminate all 80-col violations that I have introduced in my recent checkins (and some others more)

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

15 years agoDon't build runtime libraries in an Apple style build.
Daniel Dunbar [Thu, 27 Aug 2009 23:43:28 +0000 (23:43 +0000)]
Don't build runtime libraries in an Apple style build.

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

15 years agoRevert 80278 for now, it caused a lot of MIPS tests to fail
Bruno Cardoso Lopes [Thu, 27 Aug 2009 19:57:56 +0000 (19:57 +0000)]
Revert 80278 for now, it caused a lot of MIPS tests to fail

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

15 years agoRevamp our friend Mips :)
Bruno Cardoso Lopes [Thu, 27 Aug 2009 19:40:40 +0000 (19:40 +0000)]
Revamp our friend Mips :)
Add MO flags to simplify the printing of relocations.
Remove the support for printing large code model relocs (which
aren't supported anyway).

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

15 years agoDon't mark CMOV_GR8 as two-address, or commutable, since it's a pseudo.
Dan Gohman [Thu, 27 Aug 2009 18:16:24 +0000 (18:16 +0000)]
Don't mark CMOV_GR8 as two-address, or commutable, since it's a pseudo.

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

15 years agoAdjust the MachineBasicBlock verifier rules to be more
Dan Gohman [Thu, 27 Aug 2009 18:14:26 +0000 (18:14 +0000)]
Adjust the MachineBasicBlock verifier rules to be more
tolerant of blocks that end with "unreachable".

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

15 years agoAdd FIXME for when we support more specific XMM registers.
Eric Christopher [Thu, 27 Aug 2009 18:08:16 +0000 (18:08 +0000)]
Add FIXME for when we support more specific XMM registers.

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

15 years agoNuke trailing whitespace.
Eric Christopher [Thu, 27 Aug 2009 18:07:15 +0000 (18:07 +0000)]
Nuke trailing whitespace.

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

15 years agoUse stripPointerCasts instead of doing the same manually.
Dan Gohman [Thu, 27 Aug 2009 18:02:03 +0000 (18:02 +0000)]
Use stripPointerCasts instead of doing the same manually.

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

15 years agoMinor code simplification.
Dan Gohman [Thu, 27 Aug 2009 17:59:08 +0000 (17:59 +0000)]
Minor code simplification.

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

15 years agoTeach getUnderlyingObject and skipPointerCasts about GlobalAliases.
Dan Gohman [Thu, 27 Aug 2009 17:55:13 +0000 (17:55 +0000)]
Teach getUnderlyingObject and skipPointerCasts about GlobalAliases.

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

15 years agoBe somewhat more consistent about const qualifiers.
Dan Gohman [Thu, 27 Aug 2009 17:54:15 +0000 (17:54 +0000)]
Be somewhat more consistent about const qualifiers.

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

15 years agoGlobal Aliases are not identifiable objects.
Dan Gohman [Thu, 27 Aug 2009 17:52:56 +0000 (17:52 +0000)]
Global Aliases are not identifiable objects.

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

15 years agoHandle TargetData with const.
Dan Gohman [Thu, 27 Aug 2009 17:51:25 +0000 (17:51 +0000)]
Handle TargetData with const.

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

15 years agoStrip trailing whitespace from blank lines.
Dan Gohman [Thu, 27 Aug 2009 17:29:49 +0000 (17:29 +0000)]
Strip trailing whitespace from blank lines.

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

15 years agore-apply r80197, now that iterator.h is not mentioned any more
Gabor Greif [Thu, 27 Aug 2009 17:07:35 +0000 (17:07 +0000)]
re-apply r80197, now that iterator.h is not mentioned any more

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

15 years agoHopefully the final missing part :(
Anton Korobeynikov [Thu, 27 Aug 2009 16:25:49 +0000 (16:25 +0000)]
Hopefully the final missing part :(
scalar_to_vector is fully legal now

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

15 years agoForgot about actual change :)
Anton Korobeynikov [Thu, 27 Aug 2009 16:10:17 +0000 (16:10 +0000)]
Forgot about actual change :)

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

15 years agoscalar_to_vector is fully legal now (implemented as subreg accesses)
Anton Korobeynikov [Thu, 27 Aug 2009 16:04:47 +0000 (16:04 +0000)]
scalar_to_vector is fully legal now (implemented as subreg accesses)

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

15 years agoRemove an entry from ValueMap before removing elements.
Devang Patel [Thu, 27 Aug 2009 15:32:38 +0000 (15:32 +0000)]
Remove an entry from ValueMap before removing elements.

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

15 years agoOk, sometimes it's profitable to turn scalar_to_vector stuff into subreg access.
Anton Korobeynikov [Thu, 27 Aug 2009 14:51:42 +0000 (14:51 +0000)]
Ok, sometimes it's profitable to turn scalar_to_vector stuff into subreg access.
Add a testcase.

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

15 years agoTransform float scalar_to_vector into subreg accesses.
Anton Korobeynikov [Thu, 27 Aug 2009 14:38:44 +0000 (14:38 +0000)]
Transform float scalar_to_vector into subreg accesses.
No idea whether this is profitable or not.

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

15 years agoSTRD and LDRD require ARMv5TE, not just ARMv5T.
Misha Brukman [Thu, 27 Aug 2009 14:14:21 +0000 (14:14 +0000)]
STRD and LDRD require ARMv5TE, not just ARMv5T.
See http://llvm.org/PR4687 for more info and links.

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

15 years agoInverse logic to increase portability.
Benjamin Kramer [Thu, 27 Aug 2009 12:02:34 +0000 (12:02 +0000)]
Inverse logic to increase portability.

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

15 years agoTo make mcc16 run correctly on mac.
Sanjiv Gupta [Thu, 27 Aug 2009 11:54:38 +0000 (11:54 +0000)]
To make mcc16 run correctly on mac.

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

15 years agollvm-mc/Mach-O: Add MCCodeEmitter support, for encoding instructions.
Daniel Dunbar [Thu, 27 Aug 2009 08:17:51 +0000 (08:17 +0000)]
llvm-mc/Mach-O: Add MCCodeEmitter support, for encoding instructions.
 - No relocations yet, of course.

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

15 years agollvm-mc/X86: Implement single instruction encoding interface for MC.
Daniel Dunbar [Thu, 27 Aug 2009 08:12:55 +0000 (08:12 +0000)]
llvm-mc/X86: Implement single instruction encoding interface for MC.
 - Note, this is a gigantic hack, with the sole purpose of unblocking further
   work on the assembler (its also possible to test the mathcer more completely
   now).

 - Despite being a hack, its actually good enough to work over all of 403.gcc
   (although some encodings are probably incorrect). This is a testament to the
   beauty of X86's MachineInstr, no doubt! ;)

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

15 years agollvm-mc: Print encodings after the instruction, and only when we have an asm
Daniel Dunbar [Thu, 27 Aug 2009 07:58:57 +0000 (07:58 +0000)]
llvm-mc: Print encodings after the instruction, and only when we have an asm
printer.

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

15 years agoX86: Mark EH_RETURN as code-gen-only.
Daniel Dunbar [Thu, 27 Aug 2009 07:58:05 +0000 (07:58 +0000)]
X86: Mark EH_RETURN as code-gen-only.

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

15 years agoAdd {MCInst,MCOperand}::{print,dump}
Daniel Dunbar [Thu, 27 Aug 2009 07:57:12 +0000 (07:57 +0000)]
Add {MCInst,MCOperand}::{print,dump}

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

15 years agollvm-mc: Only show instruction encodings with --show-encoding.
Daniel Dunbar [Thu, 27 Aug 2009 07:56:39 +0000 (07:56 +0000)]
llvm-mc: Only show instruction encodings with --show-encoding.

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

15 years agothe buildbots revealed one more breakage. fix. (why didn't I see this?)
Gabor Greif [Thu, 27 Aug 2009 06:59:20 +0000 (06:59 +0000)]
the buildbots revealed one more breakage. fix. (why didn't I see this?)

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

15 years agoClean up the minor mess I caused with removing iterator.h. I shall take care of 80...
Gabor Greif [Thu, 27 Aug 2009 06:41:46 +0000 (06:41 +0000)]
Clean up the minor mess I caused with removing iterator.h. I shall take care of 80-col violations and the FIXME later. (Thanks goodness that I live in another continent, so the monkeypox did not strike me :-)

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

15 years agoImplement a new optimization in the inliner: if inlining multiple
Chris Lattner [Thu, 27 Aug 2009 06:29:33 +0000 (06:29 +0000)]
Implement a new optimization in the inliner: if inlining multiple
calls into a function and if the calls bring in arrays, try to merge
them together to reduce stack size.  For example, in the testcase
we'd previously end up with 4 allocas, now we end up with 2 allocas.

As described in the comments, this is not really the ideal solution
to this problem, but it is surprisingly effective.  For example, on
176.gcc, we end up eliminating 67 arrays at "gccas" time and another
24 at "llvm-ld" time.

One piece of concern that I didn't look into: at -O0 -g with
forced inlining this will almost certainly result in worse debug
info.  I think this is acceptable though given that this is a case
of "debugging optimized code", and we don't want debug info to
prevent the optimizer from doing things anyway.

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

15 years agothe inliner shouldn't crash on this.
Chris Lattner [Thu, 27 Aug 2009 06:20:45 +0000 (06:20 +0000)]
the inliner shouldn't crash on this.

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

15 years agoFor now, only run MC tests if X86 is configured.
Daniel Dunbar [Thu, 27 Aug 2009 06:11:15 +0000 (06:11 +0000)]
For now, only run MC tests if X86 is configured.

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

15 years agoThis is passing for PPC on Mac OS X.
Bill Wendling [Thu, 27 Aug 2009 05:49:50 +0000 (05:49 +0000)]
This is passing for PPC on Mac OS X.

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

15 years agoRevert accidental commit.
Bill Wendling [Thu, 27 Aug 2009 05:35:28 +0000 (05:35 +0000)]
Revert accidental commit.

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

15 years agounbreak the build, yay for symlinks + makefiles. :(
Chris Lattner [Thu, 27 Aug 2009 04:43:05 +0000 (04:43 +0000)]
unbreak the build, yay for symlinks + makefiles. :(

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

15 years agoreduce header #include'age
Chris Lattner [Thu, 27 Aug 2009 04:32:07 +0000 (04:32 +0000)]
reduce header #include'age

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

15 years agoenhance InlineFunction to be able to optionally return
Chris Lattner [Thu, 27 Aug 2009 04:20:52 +0000 (04:20 +0000)]
enhance InlineFunction to be able to optionally return
a the list of static allocas that it inlined.

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

15 years agosmallvectorize the list of returns built by CloneAndPruneFunctionInto.
Chris Lattner [Thu, 27 Aug 2009 04:02:30 +0000 (04:02 +0000)]
smallvectorize the list of returns built by CloneAndPruneFunctionInto.

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

15 years agoremove CloneTrace, which appears to be dead since 2004.
Chris Lattner [Thu, 27 Aug 2009 03:56:43 +0000 (03:56 +0000)]
remove CloneTrace, which appears to be dead since 2004.

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

15 years agoreduce inlining factor some stuff out to a static helper function,
Chris Lattner [Thu, 27 Aug 2009 03:51:50 +0000 (03:51 +0000)]
reduce inlining factor some stuff out to a static helper function,
and other code cleanups.  No functionality change.

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

15 years agoRevert accidental commit.
Bill Wendling [Thu, 27 Aug 2009 03:32:50 +0000 (03:32 +0000)]
Revert accidental commit.

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

15 years ago--- Reverse-merging r80147 into '.':
Bill Wendling [Thu, 27 Aug 2009 03:29:26 +0000 (03:29 +0000)]
--- Reverse-merging r80147 into '.':
A    include/llvm/ADT/iterator.cmake
U    autoconf/configure.ac
--- Reverse-merging r80161 into '.':
U    cmake/config-ix.cmake
--- Reverse-merging r80171 into '.':
U    Makefile
--- Reverse-merging r80173 into '.':
U    configure
U    include/llvm/Config/config.h.in
--- Reverse-merging r80180 into '.':
A    include/llvm/ADT/iterator.h.in

Despite common miscomceptions, iterator.h is alive and well. It broke the build
bots for several hours. And yet no one bothered to look at them.

Gabor and Doug, please review your changes and make sure that they actually
build before resubmitting them.

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

15 years agoAdd some checks for MachineCFG consistency. Use AnalyzeBranch and
Dan Gohman [Thu, 27 Aug 2009 02:43:49 +0000 (02:43 +0000)]
Add some checks for MachineCFG consistency. Use AnalyzeBranch and
do extra checking when it succeeds, as those are cases where
CodeGen will be doing particularly interesting CFG modifications.

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

15 years agoUpdate CMake
Daniel Dunbar [Thu, 27 Aug 2009 02:08:37 +0000 (02:08 +0000)]
Update CMake

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

15 years agollvm-mc: Tweak MCCodeEmitter skeleton.
Daniel Dunbar [Thu, 27 Aug 2009 01:34:22 +0000 (01:34 +0000)]
llvm-mc: Tweak MCCodeEmitter skeleton.

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

15 years agoInitialize the PoisonMemory member before initializing
Dan Gohman [Thu, 27 Aug 2009 01:25:57 +0000 (01:25 +0000)]
Initialize the PoisonMemory member before initializing
members that call methods that read the PoisonMemory member.
This fixes potential spurious (though probably otherwise
harmless) poising of unused memory, and fixes the
associated valgrind error.

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

15 years agoFix PR4789. Teach eliminateFrameIndex how to handle VLDRQ and VSTRQ which cannot...
Evan Cheng [Thu, 27 Aug 2009 01:23:50 +0000 (01:23 +0000)]
Fix PR4789. Teach eliminateFrameIndex how to handle VLDRQ and VSTRQ which cannot fold any immediate offset.

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

15 years agoAdd missing declarations.
Daniel Dunbar [Thu, 27 Aug 2009 01:15:54 +0000 (01:15 +0000)]
Add missing declarations.

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

15 years agoSketch TargetRegistry support for MCCodeEmitter abstract interface.
Daniel Dunbar [Thu, 27 Aug 2009 00:51:57 +0000 (00:51 +0000)]
Sketch TargetRegistry support for MCCodeEmitter abstract interface.
 - Of course, nothing actually can provide this interface yet.

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

15 years agoTry to make MSVC just a little happier.
Daniel Dunbar [Thu, 27 Aug 2009 00:38:04 +0000 (00:38 +0000)]
Try to make MSVC just a little happier.

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

15 years agoX86FastISel support for loading and storing values of type i1.
Dan Gohman [Thu, 27 Aug 2009 00:31:47 +0000 (00:31 +0000)]
X86FastISel support for loading and storing values of type i1.

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

15 years agoExpand i8 selects into control flow instead of 16-bit conditional
Dan Gohman [Thu, 27 Aug 2009 00:14:12 +0000 (00:14 +0000)]
Expand i8 selects into control flow instead of 16-bit conditional
moves. This avoids the need to promote the operands (or implicitly
extend them, a partial register update condition), and can reduce
i8 register pressure. This substantially speeds up code such as
write_hex in lib/Support/raw_ostream.cpp.

subclass-coalesce.ll is too trivial and no longer tests what it was
originally intended to test.

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

15 years agonow that include/llvm/ADT/iterator.h.in is not attempted to be built, its prerequisit...
Gabor Greif [Wed, 26 Aug 2009 23:35:33 +0000 (23:35 +0000)]
now that include/llvm/ADT/iterator.h.in is not attempted to be built, its prerequisite can go away too

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

15 years agoSimplify.
Daniel Dunbar [Wed, 26 Aug 2009 23:12:33 +0000 (23:12 +0000)]
Simplify.

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

15 years agoRegenerate configure
Douglas Gregor [Wed, 26 Aug 2009 22:59:05 +0000 (22:59 +0000)]
Regenerate configure

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

15 years agoeliminate references to ADT/iterator.h
Gabor Greif [Wed, 26 Aug 2009 22:55:19 +0000 (22:55 +0000)]
eliminate references to ADT/iterator.h

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

15 years agoMake this into a static method.
Owen Anderson [Wed, 26 Aug 2009 22:55:11 +0000 (22:55 +0000)]
Make this into a static method.

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

15 years agoFix bad length argument to substr calls. Apparently I'm the first one to
Bob Wilson [Wed, 26 Aug 2009 22:50:39 +0000 (22:50 +0000)]
Fix bad length argument to substr calls.  Apparently I'm the first one to
attempt more than 2 constraints on an instruction.

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

15 years agollvm-mc/Mach-O: Unique sections properly, so we don't get duplicate text
Daniel Dunbar [Wed, 26 Aug 2009 22:49:51 +0000 (22:49 +0000)]
llvm-mc/Mach-O: Unique sections properly, so we don't get duplicate text
sections, etc.
 - The quick and dirty way, just clone the TargetLoweringObjectFile
   code. Eventually this should be shared... somehow.

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

15 years agollvm-mc/Mach-O: Don't put assembler temporary labels in the symbol table.
Daniel Dunbar [Wed, 26 Aug 2009 22:13:22 +0000 (22:13 +0000)]
llvm-mc/Mach-O: Don't put assembler temporary labels in the symbol table.
 - I moved section creation back into AsmParser. I think policy decisions like
   this should be pushed higher, not lower, when possible (in addition the
   assembler has flags which change this behavior, for example).

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

15 years agoDe-bork CMake build
Douglas Gregor [Wed, 26 Aug 2009 22:12:02 +0000 (22:12 +0000)]
De-bork CMake build

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

15 years agoRework getPersonalityIndex slightly - 0 is now a valid and not-NULL
Eric Christopher [Wed, 26 Aug 2009 21:44:57 +0000 (21:44 +0000)]
Rework getPersonalityIndex slightly - 0 is now a valid and not-NULL
personality function.

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

15 years agonobody includes llvm/ADT/iterator.h any more,
Gabor Greif [Wed, 26 Aug 2009 21:36:59 +0000 (21:36 +0000)]
nobody includes llvm/ADT/iterator.h any more,
so get rid of this monstrosity. iterator.h.in is scheduled for deletion in my working copy,
but I wait till I see that configure gets regenerated, as it depends on it. I'll commit
then.
There are still some AC_* tests in the configure.ac dealing with iterators, those can
be zapped probably too.

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

15 years agoIf we're emitting additional CIEs due to personality functions
Eric Christopher [Wed, 26 Aug 2009 21:30:49 +0000 (21:30 +0000)]
If we're emitting additional CIEs due to personality functions
don't emit the default one. Explicitly check for the NULL
CIE later.

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

15 years agoNuke trailing whitespace.
Eric Christopher [Wed, 26 Aug 2009 21:27:09 +0000 (21:27 +0000)]
Nuke trailing whitespace.

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

15 years agollvm-mc/Mach-O: Set .subsections_via_symbols flag properly.
Daniel Dunbar [Wed, 26 Aug 2009 21:22:22 +0000 (21:22 +0000)]
llvm-mc/Mach-O: Set .subsections_via_symbols flag properly.

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

15 years agoDon't submit test directory.
Bill Wendling [Wed, 26 Aug 2009 21:00:34 +0000 (21:00 +0000)]
Don't submit test directory.

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

15 years agoAllocate the module provider in the Kaleidoscope code on the heap, not the stack...
Reid Kleckner [Wed, 26 Aug 2009 20:58:25 +0000 (20:58 +0000)]
Allocate the module provider in the Kaleidoscope code on the heap, not the stack, so that it can be properly deleted.  Also update the tutorial with the new code.  This fixes PR4762, hopefully better than the last time.

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

15 years agoRemove all the LLVM_COMPACTIFY_SENTINELS-related macro magic as discussed with Chris...
Gabor Greif [Wed, 26 Aug 2009 19:16:32 +0000 (19:16 +0000)]
Remove all the LLVM_COMPACTIFY_SENTINELS-related macro magic as discussed with Chris on IRC. Anybody wanting to debug sentinel dereferencing problems must revert this patch and perform the indicated modifications.

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

15 years agoCMake: Removed outdated TODO.
Oscar Fuentes [Wed, 26 Aug 2009 18:37:05 +0000 (18:37 +0000)]
CMake: Removed outdated TODO.

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

15 years agoGenerate section for bss and enable weak symbols
Venkatraman Govindaraju [Wed, 26 Aug 2009 18:24:12 +0000 (18:24 +0000)]
Generate section for bss and enable weak symbols

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

15 years agoConvert some more Neon tests to FileCheck.
Bob Wilson [Wed, 26 Aug 2009 18:11:50 +0000 (18:11 +0000)]
Convert some more Neon tests to FileCheck.

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

15 years agoAlter 79292 to produce output that actually assembles.
Dale Johannesen [Wed, 26 Aug 2009 18:10:32 +0000 (18:10 +0000)]
Alter 79292 to produce output that actually assembles.

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

15 years agoAllow unsigned long long DenseMapInfo.
Mike Stump [Wed, 26 Aug 2009 18:02:19 +0000 (18:02 +0000)]
Allow unsigned long long DenseMapInfo.

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

15 years agoRemove unneeded ARM-specific DAG nodes for VLD* and VST* Neon operations.
Bob Wilson [Wed, 26 Aug 2009 17:39:53 +0000 (17:39 +0000)]
Remove unneeded ARM-specific DAG nodes for VLD* and VST* Neon operations.
The instructions can be selected directly from the intrinsics.  We will need
to add some ARM-specific nodes for VLD/VST of 3 and 4 128-bit vectors, but
those are not yet implemented.

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

15 years agoAdd extload expansion for f128
Anton Korobeynikov [Wed, 26 Aug 2009 17:39:40 +0000 (17:39 +0000)]
Add extload expansion for f128

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

15 years agoUnbreak FP128 stuff in cbe
Anton Korobeynikov [Wed, 26 Aug 2009 17:39:23 +0000 (17:39 +0000)]
Unbreak FP128 stuff in cbe

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

15 years agoIgnore -fPIC test on Windows. Suggested by Yonggang Luo.
Oscar Fuentes [Wed, 26 Aug 2009 17:05:06 +0000 (17:05 +0000)]
Ignore -fPIC test on Windows. Suggested by Yonggang Luo.

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

15 years agoUnbreak CMake build
Douglas Gregor [Wed, 26 Aug 2009 16:33:57 +0000 (16:33 +0000)]
Unbreak CMake build

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

15 years agoExpand scalar_to_vector - we don't have any isel logic for it now
Anton Korobeynikov [Wed, 26 Aug 2009 16:26:09 +0000 (16:26 +0000)]
Expand scalar_to_vector - we don't have any isel logic for it now

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

15 years agoAdd comments detailing a known bug, so that people writing other
Dan Gohman [Wed, 26 Aug 2009 16:06:11 +0000 (16:06 +0000)]
Add comments detailing a known bug, so that people writing other
backends don't use it as an example.

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

15 years ago-fast is now -O0. -fast-isel is no longer experimental.
Dan Gohman [Wed, 26 Aug 2009 15:57:57 +0000 (15:57 +0000)]
-fast is now -O0. -fast-isel is no longer experimental.

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

15 years agoMove ProfileInfo::Edge's operator<< out of line. Among other benefits,
Dan Gohman [Wed, 26 Aug 2009 15:56:38 +0000 (15:56 +0000)]
Move ProfileInfo::Edge's operator<< out of line. Among other benefits,
this eliminates the ATTRIBUTE_USED, which wasn't being used in a manner
acceptable to some GCC versions, according to the buildbots.

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

15 years agoBugfix for r80100, forgot include. Sorry.
Andreas Neustifter [Wed, 26 Aug 2009 15:18:38 +0000 (15:18 +0000)]
Bugfix for r80100, forgot include. Sorry.

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

15 years agoImplemented comments from Daniel Dunbar.
Andreas Neustifter [Wed, 26 Aug 2009 15:13:44 +0000 (15:13 +0000)]
Implemented comments from Daniel Dunbar.
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090817/084958.html)

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

15 years agoDon't use INSERT_SUBREG to model anyext operations on x86-64, as it
Dan Gohman [Wed, 26 Aug 2009 14:59:13 +0000 (14:59 +0000)]
Don't use INSERT_SUBREG to model anyext operations on x86-64, as it
leads to partial-register definitions. To help avoid redundant
zero-extensions, also teach the h-register matching patterns that
use movzbl to match anyext as well as zext.

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

15 years agoCreate a ScalarEvolution-based AliasAnalysis implementation.
Dan Gohman [Wed, 26 Aug 2009 14:53:06 +0000 (14:53 +0000)]
Create a ScalarEvolution-based AliasAnalysis implementation.

This is a simple AliasAnalysis implementation which works by making
ScalarEvolution queries. ScalarEvolution has a more complete understanding
of arithmetic than BasicAA's collection of ad-hoc checks, so it handles
some cases that BasicAA misses, for example p[i] and p[i+1] within the
same iteration of a loop.

This is currently experimental. It may be that the main use for this pass
will be to help find cases where BasicAA can be profitably extended, or
to help in the development of the overall AliasAnalysis infrastructure,
however it's also possible that it could grow up to become a directly
useful pass.

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

15 years agoFix a missing newline, now that Value's operator<< doesn't add one of its own.
Dan Gohman [Wed, 26 Aug 2009 14:34:12 +0000 (14:34 +0000)]
Fix a missing newline, now that Value's operator<< doesn't add one of its own.

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

15 years agoUse SetVector instead of std::set so that alias relations are tested and
Dan Gohman [Wed, 26 Aug 2009 14:32:17 +0000 (14:32 +0000)]
Use SetVector instead of std::set so that alias relations are tested and
printed in a deterministic order.

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

15 years agollvm-mc/Mach-O: Add support for relocations.
Daniel Dunbar [Wed, 26 Aug 2009 13:58:10 +0000 (13:58 +0000)]
llvm-mc/Mach-O: Add support for relocations.
 - I haven't really tried to find the "right" way to store the fixups or apply
   them, yet. This works, but isn't particularly elegant or fast.

 - Still no evaluation support, so we don't actually ever not turn a fixup into
   a relocation entry.

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