OSDN Git Service
Chris Lattner [Mon, 25 Jan 2010 23:26:13 +0000 (23:26 +0000)]
Rearrange handling of jump tables. Highlights:
1. MachineJumpTableInfo is now created lazily for a function the first time
it actually makes a jump table instead of for every function.
2. The encoding of jump table entries is now described by the
MachineJumpTableInfo::JTEntryKind enum. This enum is determined by the
TLI::getJumpTableEncoding() hook, instead of by lots of code scattered
throughout the compiler that "knows" that jump table entries are always
32-bits in pic mode (for example).
3. The size and alignment of jump table entries is now calculated based on
their kind, instead of at machinefunction creation time.
Future work includes using the EntryKind in more places in the compiler,
eliminating other logic that "knows" the layout of jump tables in various
situations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94470
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 23:22:00 +0000 (23:22 +0000)]
prep work to support a future where getJumpTableInfo will return
a null pointer for functions with no jump tables. No functionality
change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94469
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 23:18:11 +0000 (23:18 +0000)]
add a method to get the alignment of an integer type even
when we don't have one laying around. Useful if you don't
have an llvmcontext handy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94468
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Mon, 25 Jan 2010 22:54:29 +0000 (22:54 +0000)]
Make it SP, LR, PC for GPR Register Class instead of LR, SP, PC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94465
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 22:41:33 +0000 (22:41 +0000)]
eliminate redundant argument to EmitJumpTableInfo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94464
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Mon, 25 Jan 2010 22:13:10 +0000 (22:13 +0000)]
Implemented ARMInstPrinter::printThumbS4ImmOperand().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94457
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Mon, 25 Jan 2010 21:59:20 +0000 (21:59 +0000)]
Implemented the dialect decision logic for the X86
TargetAsmLexer. Dialect-specific lexing code will
be placed in the functions LexTokenATT() and
LexTokenIntel().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94456
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Mon, 25 Jan 2010 21:56:35 +0000 (21:56 +0000)]
Fixed the order of GPR RegisterClass regs to be: ..., R10, R11, R12, ...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94455
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 25 Jan 2010 21:55:39 +0000 (21:55 +0000)]
Fix the bitcode reader to deserialize nuw/nsw/etc. bits properly in the case
of a forward-reference, which doesn't use an "abbrev" encoding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94454
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 21:28:50 +0000 (21:28 +0000)]
mcstreamerize gprel32 emission.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94452
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Mon, 25 Jan 2010 21:28:05 +0000 (21:28 +0000)]
Remove check for an impossible condition: the condition of the while loop has
already checked that TmpBB->getSinglePredecessor() is non-null.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94451
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 21:22:22 +0000 (21:22 +0000)]
mcize the non-gprel cases of AsmPrinter::printPICJumpTableEntry
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94450
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 21:17:10 +0000 (21:17 +0000)]
handle the _set_ symbol with an MCSymbol.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94449
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 21:10:10 +0000 (21:10 +0000)]
rename MAI::PICJumpTableDirective to MAI::GPRel32Directive to
make it clear what it is, instead of how it is used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94448
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 21:01:58 +0000 (21:01 +0000)]
pull the non-pic jump table case out of printPICJumpTableEntry
and MCize the non-pic case. Now printPICJumpTableEntry really
is just about printing PIC entries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94446
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 20:52:54 +0000 (20:52 +0000)]
remove JumpTableDirective, it is always null.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94445
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 20:37:36 +0000 (20:37 +0000)]
no need to implement these.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94443
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 19:51:38 +0000 (19:51 +0000)]
mcize jump table symbol manipulation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94441
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 19:39:52 +0000 (19:39 +0000)]
sink an arm specific method out of asmprinter into the ARMAsmPrinter and
rename it to avoid shadowing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94440
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 19:23:04 +0000 (19:23 +0000)]
remove dead code: the x86 target never sets usesGlobalOffsetTable,
even on x86-32/elf which uses a GOT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94439
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 19:02:58 +0000 (19:02 +0000)]
wirte up .file and .file to the mc asmparser.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94438
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 18:58:59 +0000 (18:58 +0000)]
mcstreamerize .file and .file. This also fixes an issue where the
normal form of .file would fail if the filename had a weird character
in it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94437
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 18:33:40 +0000 (18:33 +0000)]
emit ELF .type directives through MCStreamer instead of doing it textually.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94436
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 18:30:45 +0000 (18:30 +0000)]
add symbol attribute support for the ELF .type directive.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94435
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Mon, 25 Jan 2010 18:26:54 +0000 (18:26 +0000)]
Change Value::getUnderlyingObject to have the MaxLookup value specified as a
parameter with a default value, instead of just hardcoding it in the
implementation. The limit of MaxLookup = 6 was introduced in r69151 to fix
a performance problem with O(n^2) behavior in instcombine, but the scalarrepl
pass is relying on getUnderlyingObject to go all the way back to an AllocaInst.
Making the limit part of the method signature makes it clear that by default
the result is limited and should help avoid similar problems in the future.
This fixes pr6126.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94433
91177308-0d34-0410-b5e6-
96231b3b80d8
Victor Hernandez [Mon, 25 Jan 2010 17:52:13 +0000 (17:52 +0000)]
Revert r94260 until findDbgDeclare() is made more efficient
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94432
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 25 Jan 2010 15:32:10 +0000 (15:32 +0000)]
Update test for darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94421
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 07:53:05 +0000 (07:53 +0000)]
add a comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94417
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 07:52:13 +0000 (07:52 +0000)]
emit the .size directive for global variables on ELF through
mcstreamer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94416
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 07:43:40 +0000 (07:43 +0000)]
we removed support for darwin8 tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94414
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 07:29:13 +0000 (07:29 +0000)]
all supported target now have aligned common support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94413
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 07:26:17 +0000 (07:26 +0000)]
Remove support for i386 tiger tools for aligned common symbols.
Previously we would just silently miscompile code that used aligned
common's, now at least you'll get a build error. tiger-ppc already
triggered the build error because it didn't have a version of this
logic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94412
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 07:23:14 +0000 (07:23 +0000)]
don't set value to its default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94411
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 25 Jan 2010 07:20:44 +0000 (07:20 +0000)]
coff targets support alignment on .comm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94410
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Mon, 25 Jan 2010 04:59:07 +0000 (04:59 +0000)]
ARM does accept the .comm directive alignment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94408
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Mon, 25 Jan 2010 04:10:28 +0000 (04:10 +0000)]
Fix autoconf llvm srcdir location for generic projects.
Patch by Torvald Riegel!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94405
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 25 Jan 2010 02:27:39 +0000 (02:27 +0000)]
Fix PR6134.
We are not emitting alignments on Darwin for "bar". Not sure what is the
correct way to do it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94400
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Jan 2010 00:54:13 +0000 (00:54 +0000)]
Attempt to unbreak test on Linux. Chris, please check.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94399
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Jan 2010 00:45:01 +0000 (00:45 +0000)]
This example requires RTTI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94398
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 20:54:45 +0000 (20:54 +0000)]
linux/ppc does use alignment in bytes, not pow-2. This fixes PR6129.
It looks like linux/arm and linux/mips have the same setting, which
are probably wrong. Someone who cares about ARM and MIPS should
investigate with the testcase in PR6129.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94381
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 20:53:12 +0000 (20:53 +0000)]
don't reset the default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94380
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 20:43:08 +0000 (20:43 +0000)]
make -fno-rtti the default unless a directory builds with REQUIRES_RTTI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94378
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 20:22:08 +0000 (20:22 +0000)]
mark some libraries that currently require RTTI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94377
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 20:21:50 +0000 (20:21 +0000)]
libs that need EH need RTTI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94376
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 20:20:40 +0000 (20:20 +0000)]
ENABLE_EXPENSIVE_CHECKS shouldn't know how rtti is enabled, let REQUIRES_RTTI handle it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94375
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 20:17:09 +0000 (20:17 +0000)]
reassociate should do this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94374
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 20:01:41 +0000 (20:01 +0000)]
add a note.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94373
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 19:23:09 +0000 (19:23 +0000)]
just remove this test, it is not reduced, is not clear what its testing for and
it is dying due to fragility in the asmprinter .s comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94372
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 19:13:39 +0000 (19:13 +0000)]
this test has been failing or a long time, just disable it for now to get
back to green.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94371
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 19:01:06 +0000 (19:01 +0000)]
fix some issues where we weren't emitting enough newlines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94370
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 18:54:17 +0000 (18:54 +0000)]
when emitting DIEs, emit the comment on the same line as the directive.
This fixes FrontendObjC/2009-11-30-Objc-ID.m
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94369
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 02:27:03 +0000 (02:27 +0000)]
move PR5945 here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94350
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 01:07:33 +0000 (01:07 +0000)]
fix a parsing problem on instructions like:
movw $8, (_cost_table_-L97$pb)+66(%eax)
After the parens, we could still have a binop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94345
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 00:25:09 +0000 (00:25 +0000)]
This corrects an error in the type of the Llvm.dispose_context function.
Patch by James Woodyatt!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94343
91177308-0d34-0410-b5e6-
96231b3b80d8
Mon P Wang [Sun, 24 Jan 2010 00:24:43 +0000 (00:24 +0000)]
It seems better to scalarize vectors of size 1 instead of widening them.
Add support to widen SETCC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94342
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Jan 2010 00:09:49 +0000 (00:09 +0000)]
change the canonical form of "cond ? -1 : 0" to be
"sext cond" instead of a select. This simplifies some instcombine
code, matches the policy for zext (cond ? 1 : 0 -> zext), and allows
us to generate better code for a testcase on ppc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94339
91177308-0d34-0410-b5e6-
96231b3b80d8
Mon P Wang [Sun, 24 Jan 2010 00:05:03 +0000 (00:05 +0000)]
Improved widening loads by adding support for wider loads if
the alignment allows. Fixed a bug where we didn't use a
vector load/store for PR5626.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94338
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 23:31:46 +0000 (23:31 +0000)]
fix a potential overflow issue Eli pointed out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94336
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sat, 23 Jan 2010 20:32:12 +0000 (20:32 +0000)]
Speculatively revert r94322 to see if it fixes darwin selfhost buildbot.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94331
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 19:21:31 +0000 (19:21 +0000)]
third bug from PR6119: the xor dupe extension allows
for arbitrary terminators in predecessors, don't assume
it is a conditional or uncond branch. The testcase shows
an example where they can happen with switches.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94323
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sat, 23 Jan 2010 19:19:34 +0000 (19:19 +0000)]
Teach DAE that even though it can't modify the function signature of an
externally visible function, it can still find all callers of it and replace
the parameters to a dead argument with undef.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94322
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 19:16:25 +0000 (19:16 +0000)]
add an early out to ProcessBranchOnXOR to speed it up,
handle the case when we can infer an input to the xor
from all inputs that agree, instead of going into an
infinite loop. Another part of PR6199
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94321
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 18:56:07 +0000 (18:56 +0000)]
fix a crash in jump threading, PR6119
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94319
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 18:49:30 +0000 (18:49 +0000)]
implement a simple instcombine xform that has been in the
readme forever.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94318
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 18:42:37 +0000 (18:42 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94317
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 17:59:23 +0000 (17:59 +0000)]
add some notes, making posix-memalign be nocapture would be an easy improvement.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94312
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 23 Jan 2010 10:26:57 +0000 (10:26 +0000)]
Remove the '-disable-scheduling' flag and replace it with the 'source' option of
the '-pre-RA-sched' flag. It actually makes more sense to do it this way. Also,
keep track of the SDNode ordering by default. Eventually, we would like to make
this ordering a way to break a "tie" in the scheduler. However, doing that now
breaks the "CodeGen/X86/abi-isel.ll" test for 32-bit Linux.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94308
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 23 Jan 2010 09:54:23 +0000 (09:54 +0000)]
Respect operator precedence (and silence a gcc 4.3 warning).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94304
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 07:47:02 +0000 (07:47 +0000)]
mcize lcomm, simplify .comm, extend both to support 64-bit sizes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94299
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 07:21:06 +0000 (07:21 +0000)]
resolve a fixme: the "nonexecutable stack directive" is actually
a .section. Switch to it with SwitchSection.
However, I think that this directive should be safe on any ELF target.
If so, we should hoist it up out of the X86 and SystemZ targets.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94298
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 07:17:54 +0000 (07:17 +0000)]
remove a dead call.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94297
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 07:00:21 +0000 (07:00 +0000)]
use helpers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94296
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 06:53:23 +0000 (06:53 +0000)]
mcize visibility directives.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94295
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 06:39:22 +0000 (06:39 +0000)]
move the various directive enums out of the MCStreamer class
into a new MCDirectives.h file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94294
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 06:17:14 +0000 (06:17 +0000)]
Change constantexpr global variable initializers to convert the constants
to MCExpr then emit them through MCStreamer with EmitValue. I think all
global variable initializers are now going through mcstreamer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94293
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 23 Jan 2010 06:02:43 +0000 (06:02 +0000)]
Don't lower splat vector load to relative to the esp if the
stack may be misaligned.
Update test accordingly.
Patch by Evan Cheng!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94291
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 05:51:36 +0000 (05:51 +0000)]
mcstreamerize .no_dead_strip and .reference for static ctors/dtors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94290
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 05:45:28 +0000 (05:45 +0000)]
stop testing for invalid output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94288
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 23 Jan 2010 05:29:06 +0000 (05:29 +0000)]
Reapply 94059 while fixing the calling convention setup
for strcpy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94287
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 05:28:25 +0000 (05:28 +0000)]
remove unneeded directive set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94286
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 05:26:25 +0000 (05:26 +0000)]
use some helpers instead of duplicating logic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94285
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 05:19:23 +0000 (05:19 +0000)]
mcize jump table and constant pool entry labels, .local on elf,
and some .weak directives.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94284
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 04:54:10 +0000 (04:54 +0000)]
emit .ascii and .asciz through MCStreamer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94282
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 04:42:42 +0000 (04:42 +0000)]
simplify code a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94281
91177308-0d34-0410-b5e6-
96231b3b80d8
Mon P Wang [Sat, 23 Jan 2010 04:35:57 +0000 (04:35 +0000)]
InstCombine should not fold sext/zext of a vector and a bitcast to a scalar to a sext/zext
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94280
91177308-0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 23 Jan 2010 04:01:37 +0000 (04:01 +0000)]
Update CMake build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94278
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 03:11:46 +0000 (03:11 +0000)]
remove one form of EmitString, just use EmitBytes instead. We must
be careful to add a \0 at the end though, because EmitString didn't
do this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94277
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 03:11:10 +0000 (03:11 +0000)]
remove this test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94276
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Sat, 23 Jan 2010 02:43:15 +0000 (02:43 +0000)]
Added the skeleton for the implementation of the X86
target-specific AsmLexer, and added the appropriate
registration calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94275
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 23 Jan 2010 01:21:27 +0000 (01:21 +0000)]
Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94272
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 23 Jan 2010 01:19:28 +0000 (01:19 +0000)]
Fix tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94271
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Sat, 23 Jan 2010 00:40:33 +0000 (00:40 +0000)]
Modified the register matcher function in AsmMatcher to
be static. Also made it possible for clients to get it
and no other functions from ...GenAsmMatcher.inc by
defining REGISTERS_ONLY before including GenAsmMatcher.inc.
This sets the stage for target-specific lexers that can
identify registers and return AsmToken::Register as
appropriate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94266
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 23 Jan 2010 00:26:28 +0000 (00:26 +0000)]
Avoid using "Type" as the variable name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94262
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sat, 23 Jan 2010 00:26:16 +0000 (00:26 +0000)]
AsmMatcher: Add a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94261
91177308-0d34-0410-b5e6-
96231b3b80d8
Victor Hernandez [Sat, 23 Jan 2010 00:17:34 +0000 (00:17 +0000)]
In mem2reg, for all alloca/stores that get promoted where the alloca has an associated llvm.dbg.declare instrinsic, insert an llvm.dbg.var intrinsic before each store
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94260
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 23 Jan 2010 00:15:00 +0000 (00:15 +0000)]
teach MCAsmStreamer::EmitBytes to use .ascii and .asciz
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94259
91177308-0d34-0410-b5e6-
96231b3b80d8
Victor Hernandez [Sat, 23 Jan 2010 00:03:28 +0000 (00:03 +0000)]
Make sure ValueFn starts off empty
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94256
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 22 Jan 2010 23:49:45 +0000 (23:49 +0000)]
Enable pre-regalloc scheduling load clustering by default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94255
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 22 Jan 2010 23:49:11 +0000 (23:49 +0000)]
Be more conservative with clustering f32 / f64 loads.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94254
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 22 Jan 2010 23:47:11 +0000 (23:47 +0000)]
move "EOL" from asmprinter to dwarfprinter. It should eventually
be completely eliminated, but today is not that day.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94253
91177308-0d34-0410-b5e6-
96231b3b80d8