Andreas Neustifter [Fri, 28 Aug 2009 11:28:24 +0000 (11:28 +0000)]
Preparation for Optimal Edge Profiling:
This implements the maximum spanning tree algorithm on CFGs according to
weights given by the ProfileEstimator. This is then used to implement Optimal
Edge Profiling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80358
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Fri, 28 Aug 2009 10:38:26 +0000 (10:38 +0000)]
Remove profiling output file because two consecutive runs of make check give
error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80357
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Fri, 28 Aug 2009 10:07:41 +0000 (10:07 +0000)]
Removed unnecessary file creation during test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80356
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Fri, 28 Aug 2009 10:00:28 +0000 (10:00 +0000)]
Pulled all tests into one test. Removed some redundant tests. Rename.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80355
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 08:08:22 +0000 (08:08 +0000)]
Fix -Asserts warning, round two.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80354
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 07:08:47 +0000 (07:08 +0000)]
llvm-mc: .lsym is more unsupported than unimplemented, pending a use case appearing.
Also, all one of the file level flags are implemented.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80352
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 07:08:35 +0000 (07:08 +0000)]
llvm-mc: Support .comm emission.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80351
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 28 Aug 2009 06:59:37 +0000 (06:59 +0000)]
Print a nl before pic labels so they start at a new line. This makes assembly more readable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80350
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Fri, 28 Aug 2009 06:48:25 +0000 (06:48 +0000)]
Since all std::cout is gone, also remove iostream include.
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20090824/085620.html)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80349
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Fri, 28 Aug 2009 06:41:00 +0000 (06:41 +0000)]
Readded test from r79615, this tests the complete profiling tool chain. Furhter
tests can test only parts of this system.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80348
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:49:21 +0000 (05:49 +0000)]
llvm-mc: Support .zerofill emission.
- I'm still trying to figure out the cleanest way to implement this and match the assembler, currently there are some substantial differences.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80347
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:49:04 +0000 (05:49 +0000)]
llvm-mc: Tweak section alignment and size computation to match 'as' closer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80345
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:48:54 +0000 (05:48 +0000)]
llvm-mc: Factor getSectionData out of SwitchSection.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80344
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:48:46 +0000 (05:48 +0000)]
llvm-mc: Emit .lcomm as .zerofill.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80343
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:48:29 +0000 (05:48 +0000)]
llvm-mc: Unique zero fill sections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80342
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:48:22 +0000 (05:48 +0000)]
llvm-mc: Add const to EmitZeroFill section argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80341
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:48:10 +0000 (05:48 +0000)]
llvm-mc: Fix thinko in emitting values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80340
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:48:04 +0000 (05:48 +0000)]
Add MathExtras.h OffsetToAlignment, like RoundUpToAlignment but returns the
offset to the next aligned integer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80339
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 05:47:56 +0000 (05:47 +0000)]
Fix -Asserts warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80338
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 28 Aug 2009 04:48:54 +0000 (04:48 +0000)]
finish a half formed thought :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80334
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 03:06:28 +0000 (03:06 +0000)]
Another NO_RUNTIME_LIBRARIES tweak...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80331
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 28 Aug 2009 02:20:39 +0000 (02:20 +0000)]
Tweak NO_RUNTIME_LIBS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80330
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 28 Aug 2009 00:45:47 +0000 (00:45 +0000)]
Mark Andersen's as experimental.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80328
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 28 Aug 2009 00:43:14 +0000 (00:43 +0000)]
Fix PR3913, patch by Jakub Staszak!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80327
91177308-0d34-0410-b5e6-
96231b3b80d8
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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