Owen Anderson [Tue, 6 Apr 2010 04:20:48 +0000 (04:20 +0000)]
Use a ManagedCleanup to prevent leaking the PassRegistrar map. In breaks the
use case where someone wants to resurrect LLVM after calling llvm_shutdown,
but I'm not aware of any clients that are affected by this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100519
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Tue, 6 Apr 2010 03:12:43 +0000 (03:12 +0000)]
Avoid overflowing a signed integer which triggers undefined behaviour.
Overflowing an unsigned integer is fine and behaves as you would expect.
Also fix a pasto, allowing SignExtend64 to take a 64-bit argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100517
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 6 Apr 2010 01:31:12 +0000 (01:31 +0000)]
Add a const qualifier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100515
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 6 Apr 2010 00:58:50 +0000 (00:58 +0000)]
propagate cookie management out one layer of function calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100510
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 6 Apr 2010 00:55:39 +0000 (00:55 +0000)]
report errors through LLVMContext's inline asm handler if available.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100509
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 6 Apr 2010 00:51:52 +0000 (00:51 +0000)]
Give MachineModuleInfo an actual Module*.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100508
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 6 Apr 2010 00:44:45 +0000 (00:44 +0000)]
give LLVMContext an inline asm diagnostic hook member.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100506
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 6 Apr 2010 00:38:32 +0000 (00:38 +0000)]
Remove unnecessary include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100505
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 6 Apr 2010 00:33:43 +0000 (00:33 +0000)]
give the SourceMgr object a cookie.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100504
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 6 Apr 2010 00:26:48 +0000 (00:26 +0000)]
Give llvm::SourceMgr the ability to have a client-specified
diagnostic handler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100503
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 5 Apr 2010 23:53:46 +0000 (23:53 +0000)]
Remove MaybeOwningPtr. We're going to use reference-counting instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100499
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Mon, 5 Apr 2010 23:48:02 +0000 (23:48 +0000)]
Properly enable load clustering.
Operand 2 on a load instruction does not have to be a RegisterSDNode for this to
work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100497
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 5 Apr 2010 23:33:29 +0000 (23:33 +0000)]
Fix an obvious copy-n-paste bug. It's not known to cause any miscompilation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100494
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 23:15:42 +0000 (23:15 +0000)]
Give AsmParser an option to control whether it finalizes
the stream. New demo:
$ clang asm.c -S -o - -emit-llvm | llc -filetype=obj -o t.o
$ otool -tv t.o
t.o:
(__TEXT,__text) section
_foo:
0000000000000000 subq $0x08,%rsp
0000000000000004 movl %edi,(%rsp)
0000000000000007 movl %edi,%eax
0000000000000009 incl %eax
000000000000000b movl %eax,(%rsp)
000000000000000e movl %eax,0x04(%rsp)
0000000000000012 addq $0x08,%rsp
0000000000000016 ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100492
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 23:11:24 +0000 (23:11 +0000)]
add .o file writing for inline asm in llc. Here's a silly
demo:
$ clang asm.c -S -o - -emit-llvm | llc -filetype=obj -o t.o
<inline asm>:1:2: error: unrecognized instruction
abc incl %eax
^
LLVM ERROR: Error parsing inline asm
Only problem seems to be that the parser finalizes OutStreamer
at the end of the first inline asm, which isn't what we want.
For example:
$ cat asm.c
int foo(int X) {
__asm__ ("incl %0" : "+r" (X));
return X;
}
$ clang asm.c -S -o - -emit-llvm | llc
...
subq $8, %rsp
movl %edi, (%rsp)
movl %edi, %eax
## InlineAsm Start
incl %eax
## InlineAsm End
movl %eax, (%rsp)
movl %eax, 4(%rsp)
addq $8, %rsp
ret
$ clang asm.c -S -o - -emit-llvm | llc -filetype=obj -o t.o
$ otool -tv t.o
t.o:
(__TEXT,__text) section
_foo:
0000000000000000 subq $0x08,%rsp
0000000000000004 movl %edi,(%rsp)
0000000000000007 movl %edi,%eax
0000000000000009 incl %eax
$
don't stop at inc!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100491
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 23:07:42 +0000 (23:07 +0000)]
add a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100490
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 23:07:18 +0000 (23:07 +0000)]
tidy #includes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100489
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 5 Apr 2010 22:59:21 +0000 (22:59 +0000)]
Output floating point representations in DWARF format. This is done by outputing
the FP encoding directly as a hex representation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100487
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 22:49:48 +0000 (22:49 +0000)]
update unit test for api change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100486
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 22:42:30 +0000 (22:42 +0000)]
stringref-ize the MemoryBuffer::get apis. This requires
a co-committed clang patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100485
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 5 Apr 2010 22:30:05 +0000 (22:30 +0000)]
Add nounwind.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100482
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 5 Apr 2010 22:21:09 +0000 (22:21 +0000)]
Fix ADD32rr_alt instruction encoding bug. Patch by Marius Wachtler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100480
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 22:14:48 +0000 (22:14 +0000)]
fix a really nasty bug that Evan was tracking in SCCP. When resolving
undefs in branches/switches, we have two cases: a branch on a literal
undef or a branch on a symbolic value which is undef. If we have a
literal undef, the code was correct: forcing it to a constant is the
right thing to do.
If we have a branch on a symbolic value that is undef, we should force
the symbolic value to a constant, which then makes the successor block
live. Forcing the condition of the branch to being a constant isn't
safe if later paths become live and the value becomes overdefined. This
is the case that 'forcedconstant' is designed to handle, so just use it.
This fixes rdar://
7765019 but there is no good testcase for this, the
one I have is too insane to be useful in the future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100478
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 21:18:32 +0000 (21:18 +0000)]
some code cleanups, use SwitchInst::findCaseValue, reduce indentation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100468
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 5 Apr 2010 21:16:25 +0000 (21:16 +0000)]
Code clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100467
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Mon, 5 Apr 2010 21:14:32 +0000 (21:14 +0000)]
Remove FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100466
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 5 Apr 2010 21:09:22 +0000 (21:09 +0000)]
Introduce MaybeOwningPtr, a smart pointer that may (or may not) have
ownership over the pointer it contains. Useful when we want to
communicate ownership while still having several clients holding on to
the same pointer *without* introducing reference counting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100463
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Mon, 5 Apr 2010 21:09:12 +0000 (21:09 +0000)]
Fix OProfileJITEventListener build for new DebugLoc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100461
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 5 Apr 2010 20:24:08 +0000 (20:24 +0000)]
Add a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100459
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 20:11:45 +0000 (20:11 +0000)]
lowering a volatile llvm.memcpy to a libc memcpy is ok.
PR6779
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100457
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 5 Apr 2010 19:17:22 +0000 (19:17 +0000)]
Don't do code sinking on unreachable blocks. It's unprofitable and hazardous.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100455
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 5 Apr 2010 19:16:38 +0000 (19:16 +0000)]
Add an isReachableFromEntry to MachineDominators, following the one
in Dominators.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100454
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Mon, 5 Apr 2010 18:35:37 +0000 (18:35 +0000)]
Update to note that clang has a baseline now. Dropping x86-32 for MacOS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100447
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 17:52:31 +0000 (17:52 +0000)]
don't use emitlabel in the arm asm printer yet, the order
isn't well specified. ARM really needs to have its instprinter
finished at some point.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100439
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 5 Apr 2010 17:50:20 +0000 (17:50 +0000)]
Push const through the regex engine. Fixes some of the warnings in PR6616.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100438
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 16:32:14 +0000 (16:32 +0000)]
fix a couple problems I introduced handling symbols
with spaces in them. Sym->getName() != OS << *Sym
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100434
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Mon, 5 Apr 2010 10:17:15 +0000 (10:17 +0000)]
Disambiguate else.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100423
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 06:21:01 +0000 (06:21 +0000)]
trim some prototypes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100420
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 06:19:28 +0000 (06:19 +0000)]
remove the now-redundant MMI pointer in SelectionDAG.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100419
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 06:12:01 +0000 (06:12 +0000)]
hopefully sate the clang self host build, which is apparently
instantiating some folding set stuff that GCC isn't, requiring
some types to not be incomplete.
I don't know if clang is right or wrong, but unbreaking the
bot is goodness. Here's the broken build:
http://google1.osuosl.org:8011/builders/clang-x86_64-darwin10-selfhost/builds/1813/steps/compile.llvm.stage2/logs/stdio
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100418
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 06:10:13 +0000 (06:10 +0000)]
remove some redundant MMI arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100417
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 06:05:26 +0000 (06:05 +0000)]
unthread MMI from FastISel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100416
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:57:52 +0000 (05:57 +0000)]
remove the MMI pointer from MachineFrameInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100415
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:49:50 +0000 (05:49 +0000)]
enhance MachineFunction to have a MMI pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100414
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 5 Apr 2010 05:48:47 +0000 (05:48 +0000)]
Add MC and LTO, two terms I just had to explain on IRC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100413
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:48:36 +0000 (05:48 +0000)]
simplify code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100412
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:43:16 +0000 (05:43 +0000)]
prune #includes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100411
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:32:45 +0000 (05:32 +0000)]
privatize more stuff, eliminate vtables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100410
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:31:04 +0000 (05:31 +0000)]
reprivatize now that DwarfWriter is gone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100409
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:28:23 +0000 (05:28 +0000)]
prune #includes, MMI can never be null
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100408
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:24:55 +0000 (05:24 +0000)]
prune #includes, realize the MMI can never be null.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100407
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:12:59 +0000 (05:12 +0000)]
finally blast DwarfWriter away.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100406
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 05:11:15 +0000 (05:11 +0000)]
change AsmPrinter to use DwarfDebug/DwarfException directly
instead of going through DwarfWriter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100405
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Mon, 5 Apr 2010 04:51:50 +0000 (04:51 +0000)]
Get rid of traling whitespaces. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100404
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Mon, 5 Apr 2010 04:46:17 +0000 (04:46 +0000)]
The disassembler impl. of MCDisassembler::getInstruction() was using the pattern
uint32_t insn;
MemoryObject.readBytes(Address, 4, (uint8_t*)&insn, NULL)
to read 4 bytes of memory contents into a 32-bit uint variable. This leaves the
interpretation of byte order up to the host machine and causes PPC test cases of
arm-tests, neon-tests, and thumb-tests to fail. Fixed to use a byte array for
reading the memory contents and shift the bytes into place for the 32-bit uint
variable in the ARM case and 16-bit halfword in the Thumb case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100403
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 04:44:02 +0000 (04:44 +0000)]
implement EmitFunctionEntryLabel to emit the .cc_top directive,
allowing xcore to use the normal runOnMachineFunction
implementation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100402
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 04:11:11 +0000 (04:11 +0000)]
don't reference DwarfWriter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100401
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 04:09:20 +0000 (04:09 +0000)]
trim some spurious references to DwarfWriter. SDIsel really doesn't
need it anymore, so don't addRequire it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100400
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 04:04:10 +0000 (04:04 +0000)]
prune some #includes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100399
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 03:52:55 +0000 (03:52 +0000)]
eliminate DwarfDebug::shouldEmit, which is the same now as MMI::hasDebugInfo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100386
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 03:49:26 +0000 (03:49 +0000)]
fix a regression on 2009-08-17-DebugInfo.m
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100385
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Mon, 5 Apr 2010 03:10:20 +0000 (03:10 +0000)]
Replace TSFlagsFields and TSFlagsShifts with a simpler TSFlags field.
When a target instruction wants to set target-specific flags, it should simply
set bits in the TSFlags bit vector defined in the Instruction TableGen class.
This works well because TableGen resolves member references late:
class I : Instruction {
AddrMode AM = AddrModeNone;
let TSFlags{3-0} = AM.Value;
}
let AM = AddrMode4 in
def ADD : I;
TSFlags gets the expected bits from AddrMode4 in this example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100384
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 02:23:33 +0000 (02:23 +0000)]
selection dag doesn't need DwarfWriter, remove some tendrils.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100382
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 02:19:28 +0000 (02:19 +0000)]
fastisel doesn't need DwarfWriter, remove some tendricles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100381
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 5 Apr 2010 01:57:50 +0000 (01:57 +0000)]
Temporarily remove to disable building of ARM disassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100380
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 5 Apr 2010 01:34:00 +0000 (01:34 +0000)]
Re-apply 100265 but instead disable building of ARM disassembly for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100379
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 5 Apr 2010 01:04:27 +0000 (01:04 +0000)]
Reverting 100265 to try to get buildbots green again. Lots of self-hosting buildbots started complaining since this commit. Also xfail ARM disassembly tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100378
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 00:42:55 +0000 (00:42 +0000)]
just have all targets create the DwarfWriter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100377
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 00:38:44 +0000 (00:38 +0000)]
simplify various getAnalysisUsage implementations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100376
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 00:27:29 +0000 (00:27 +0000)]
nuke DwarfPrinter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100375
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 00:26:50 +0000 (00:26 +0000)]
make DwarfException not inherit from DwarfPrinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100374
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 00:18:22 +0000 (00:18 +0000)]
change SizeOf to take AsmPrinter instead of TargetData,
simplifying a bunch of code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100373
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 5 Apr 2010 00:13:49 +0000 (00:13 +0000)]
1) make DIE take AsmPrinter instead of DwarfPrinter.
2) change DwarfDebug to not inherit from DwarfPrinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100372
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:41:46 +0000 (23:41 +0000)]
Move EmitFrameMoves into AsmPrinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100371
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:36:52 +0000 (23:36 +0000)]
missed a header :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100370
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:31:58 +0000 (23:31 +0000)]
simplify code and reduce indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100369
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:25:33 +0000 (23:25 +0000)]
now that the magic is dispelled, move EmitSectionOffset to AsmPrinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100368
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:22:29 +0000 (23:22 +0000)]
eliminate the magic AbsoluteDebugSectionOffsets MAI hook,
which is really a property of the section being referenced.
Add a predicate to MCSection to replace it.
Yay for reduction in magic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100367
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:17:54 +0000 (23:17 +0000)]
only emit section labels if we have debug info, fixing a few
regtest failures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100366
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:10:38 +0000 (23:10 +0000)]
I was wrong, ocaml isn't referencing 'Ldata_begin', so remove it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100365
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:06:31 +0000 (23:06 +0000)]
add some assertions to EmitSectionOffset.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100364
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 23:02:02 +0000 (23:02 +0000)]
stop emitting some dead L labels.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100363
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 22:59:04 +0000 (22:59 +0000)]
Store an use the symbols emitted at the start of the debug
sections instead of magically rematerializing them later.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100362
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 22:33:59 +0000 (22:33 +0000)]
remove the didInitial ivar, rename emitInitial to be more
descriptive, change EmitSectionOffset back to taking a
symbol instead of a string.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100361
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 22:25:14 +0000 (22:25 +0000)]
simplify EmitSectionOffset a little bit, improve comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100360
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 21:49:31 +0000 (21:49 +0000)]
revert my patch, need to reconsider this and figure out what is really going on.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100358
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 21:37:20 +0000 (21:37 +0000)]
fix pasto, this is the wrong setting for arm elf.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100357
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 21:34:40 +0000 (21:34 +0000)]
The "IsSmall" argument to EmitSectionOffset is always true,
constant fold it away.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100356
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 21:31:54 +0000 (21:31 +0000)]
eliminate the "isEH" argument to EmitSectionOffset.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100355
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 21:29:44 +0000 (21:29 +0000)]
isAbsoluteEHSectionOffsets always returns false, eliminate it
and substitute false at the one call site.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100354
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Sun, 4 Apr 2010 21:27:26 +0000 (21:27 +0000)]
Clean up SSEDomainFix pass.
Restrict bit mask operations to the DomainValue class. Rename methods for
clarity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100353
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 21:06:50 +0000 (21:06 +0000)]
don't reset the default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100352
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 20:20:50 +0000 (20:20 +0000)]
move some more stuff to asmprinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100351
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 20:10:41 +0000 (20:10 +0000)]
simplify some code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100350
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 20:04:21 +0000 (20:04 +0000)]
move EmitEncodingByte to AsmPrinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100349
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 20:01:25 +0000 (20:01 +0000)]
move EmitCFAByte to AsmPrinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100348
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 19:58:12 +0000 (19:58 +0000)]
inline EmitDifference away.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100347
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 19:28:59 +0000 (19:28 +0000)]
resolve a fixme.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100346
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 19:25:43 +0000 (19:25 +0000)]
move gettemplabel and getdwlabel to AsmPrinter and rename
them for consistency.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100345
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 4 Apr 2010 19:09:29 +0000 (19:09 +0000)]
move uleb/sleb printing into AsmPrinter from DwarfPrinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100344
91177308-0d34-0410-b5e6-
96231b3b80d8