History log of /llvm-project/llvm/lib/CodeGen/MachineModuleInfo.cpp (Results 151 – 175 of 252)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 755aceb5 05-Aug-2010 Owen Anderson <resistor@mac.com>

Don't use PassInfo* as a type identifier for passes. Instead, use the address of the static
ID member as the sole unique type identifier. Clean up APIs related to this change.

llvm-svn: 110396


# a57b97e7 21-Jul-2010 Owen Anderson <resistor@mac.com>

Fix batch of converting RegisterPass<> to INTIALIZE_PASS().

llvm-svn: 109045


# 1e936277 16-Jul-2010 Dan Gohman <gohman@apple.com>

Revert r108369, sorting llvm.dbg.declare information by source position,
since it doesn't work for front-ends which don't emit column information
(which includes llvm-gcc in its present configuration

Revert r108369, sorting llvm.dbg.declare information by source position,
since it doesn't work for front-ends which don't emit column information
(which includes llvm-gcc in its present configuration), and doesn't
work for clang for K&R style variables where the variables are declared
in a different order from the parameter list.

Instead, make a separate pass through the instructions to collect the
llvm.dbg.declare instructions in order. This ensures that the debug
information for variables is emitted in this order.

llvm-svn: 108538

show more ...


# f10cd5c6 14-Jul-2010 Dan Gohman <gohman@apple.com>

Make the order in which variables are described in debug information
independent of the order that isel happens to visit the dbg_declare
intrinsics. This fixes a bug in which the formal arguments wer

Make the order in which variables are described in debug information
independent of the order that isel happens to visit the dbg_declare
intrinsics. This fixes a bug in which the formal arguments were
being printed in reverse order, now that fast isel is going bottom up.

llvm-svn: 108369

show more ...


Revision tags: llvmorg-2.7.0
# 929f3c09 16-Apr-2010 Bill Wendling <isanbard@gmail.com>

The JIT calls TidyLandingPads to tidy up the landing pads. However, because the
JIT doesn't use the MC back-end asm printer to emit labels that it uses, the
section for the MCSymbol is never set. And

The JIT calls TidyLandingPads to tidy up the landing pads. However, because the
JIT doesn't use the MC back-end asm printer to emit labels that it uses, the
section for the MCSymbol is never set. And thus the MCSymbol for the EH label
isn't marked as "defined". Because of that, TidyLandingPads removes the needed
landing pads from the JIT output. This breaks EH for every JIT program.

This is a work-around for this limitation. We pass in the label locations
map. If the label has a non-zero value, then it was "emitted" by the JIT and
TidyLandingPads shouldn't remove that label.

A nicer solution would be to mark the MCSymbol as "used" by the JIT and not rely
upon the section being set to determine if it's defined or not.

llvm-svn: 101453

show more ...


# b36d07cb 15-Apr-2010 Gabor Greif <ggreif@gmail.com>

prune includes

llvm-svn: 101385


# bcaf681c 15-Apr-2010 Dan Gohman <gohman@apple.com>

Add const qualifiers to CodeGen's use of LLVM IR constructs.

llvm-svn: 101334


# f2267483 06-Apr-2010 Chris Lattner <sabre@nondot.org>

Give MachineModuleInfo an actual Module*.

llvm-svn: 100508


# b1c4f62c 22-Mar-2010 Chris Lattner <sabre@nondot.org>

Fix PR6673: updating the callback should not clear the map.

llvm-svn: 99227


# db035a0a 16-Mar-2010 Chris Lattner <sabre@nondot.org>

Fix the third (and last known) case of code update problems due
to LLVM IR changes with addr label weirdness. In the testcase, we
generate references to the two bb's when codegen'ing the first
func

Fix the third (and last known) case of code update problems due
to LLVM IR changes with addr label weirdness. In the testcase, we
generate references to the two bb's when codegen'ing the first
function:

_test1: ## @test1
leaq Ltmp0(%rip), %rax
..
leaq Ltmp1(%rip), %rax

Then continue to codegen the second function where the blocks
get merged. We're now smart enough to emit both labels, producing
this code:

_test_fun: ## @test_fun
## BB#0: ## %entry
Ltmp1: ## Block address taken
Ltmp0:
## BB#1: ## %ret
movl $-1, %eax
ret

Rejoice.

llvm-svn: 98595

show more ...


# 561334a8 15-Mar-2010 Chris Lattner <sabre@nondot.org>

Implement support for the case when a reference to a addr-of-bb
label is generated, but then the block is deleted. Since the
value is undefined, we just emit the label right after the entry
label

Implement support for the case when a reference to a addr-of-bb
label is generated, but then the block is deleted. Since the
value is undefined, we just emit the label right after the entry
label of the function. It might matter that the label is in the
same section as the function was afterall.

llvm-svn: 98579

show more ...


# 347a0eb8 15-Mar-2010 Chris Lattner <sabre@nondot.org>

Fix the case when a reference to an address taken BB is emitted in one
function, then the BB is RAUW'd before the definition is emitted. There
are still two cases not being handled, but this should

Fix the case when a reference to an address taken BB is emitted in one
function, then the BB is RAUW'd before the definition is emitted. There
are still two cases not being handled, but this should improve us back to
the situation before I touched anything.

llvm-svn: 98566

show more ...


# 9efbbcbe 14-Mar-2010 Chris Lattner <sabre@nondot.org>

fix AsmPrinter::GetBlockAddressSymbol to always return a unique
label instead of trying to form one based on the BB name (which
causes collisions if the name is empty). This fixes PR6608

llvm-svn:

fix AsmPrinter::GetBlockAddressSymbol to always return a unique
label instead of trying to form one based on the BB name (which
causes collisions if the name is empty). This fixes PR6608

llvm-svn: 98495

show more ...


# 6e52e9db 14-Mar-2010 Chris Lattner <sabre@nondot.org>

get MMI out of the label uniquing business, just go to MCContext
to get unique assembler temporary labels.

llvm-svn: 98489


# ee2fbbc9 14-Mar-2010 Chris Lattner <sabre@nondot.org>

change the LabelSDNode to be EHLabelSDNode and make it hold
an MCSymbol. Make the EH_LABEL MachineInstr hold its label
with an MCSymbol instead of ID. Fix a bug in MMI.cpp which
would return labels

change the LabelSDNode to be EHLabelSDNode and make it hold
an MCSymbol. Make the EH_LABEL MachineInstr hold its label
with an MCSymbol instead of ID. Fix a bug in MMI.cpp which
would return labels named "Label4" instead of "label4".

llvm-svn: 98463

show more ...


# 07293da9 14-Mar-2010 Chris Lattner <sabre@nondot.org>

eliminate InvalidateLabel and LabelIDList from MMI and replace
them with a counter.

llvm-svn: 98462


# 34adc8d2 14-Mar-2010 Chris Lattner <sabre@nondot.org>

change EH related stuff (other than EH_LABEL) to use MCSymbol
instead of label ID's. This cleans up and regularizes a bunch
of code and makes way for future progress.

Unfortunately, this pointed o

change EH related stuff (other than EH_LABEL) to use MCSymbol
instead of label ID's. This cleans up and regularizes a bunch
of code and makes way for future progress.

Unfortunately, this pointed out to me that JITDwarfEmitter.cpp
is largely copy and paste from DwarfException/MachineModuleInfo
and other places. This is very sad and disturbing. :(

One major change here is that TidyLandingPads moved from being
called in DwarfException::BeginFunction to being called in
DwarfException::EndFunction. There should not be any
functionality change from doing this, but I'm not an EH expert.

llvm-svn: 98459

show more ...


# e468f88b 13-Mar-2010 Chris Lattner <sabre@nondot.org>

rearrange MCContext ownership. Before LLVMTargetMachine created it
and passing off ownership to AsmPrinter. Now MachineModuleInfo
creates it and owns it by value. This allows us to use MCSymbols

rearrange MCContext ownership. Before LLVMTargetMachine created it
and passing off ownership to AsmPrinter. Now MachineModuleInfo
creates it and owns it by value. This allows us to use MCSymbols
more consistently throughout the rest of the code generator, and
simplifies a bit of code. This also allows MachineFunction to
keep an MCContext reference handy, and cleans up the TargetRegistry
interfaces for AsmPrinters.

llvm-svn: 98450

show more ...


# c3b70f63 09-Mar-2010 Chris Lattner <sabre@nondot.org>

strength reduce MMI::MappedLabel to MMI::isLabelDeleted,
and add a FIXME about how we are eventually going to zap this
lookup table once mc world domination is complete.

llvm-svn: 98031


# 182c53ee 06-Feb-2010 Bob Wilson <bob.wilson@apple.com>

Fix an uninitialized value. Radar 7609421.

llvm-svn: 95488


# 54c05308 28-Jan-2010 Jim Grosbach <grosbach@apple.com>

Update of 94055 to track the IR level call site information via an intrinsic.
This allows code gen and the exception table writer to cooperate to make sure
landing pads are associated with the correc

Update of 94055 to track the IR level call site information via an intrinsic.
This allows code gen and the exception table writer to cooperate to make sure
landing pads are associated with the correct invoke locations.

llvm-svn: 94726

show more ...


# 143f7eb4 21-Jan-2010 Jim Grosbach <grosbach@apple.com>

back this out for now. Growing Function is not good.

llvm-svn: 94097


# e029a6a5 21-Jan-2010 Jim Grosbach <grosbach@apple.com>

Make sure that landing pad entries in the EH call site table are in the proper
order for SjLj style exception handling.

llvm-svn: 94055


# 21c2e100 24-Nov-2009 Devang Patel <dpatel@apple.com>

Remove DebugLabelFolder pass. It is not used by dwarf writer anymore.

llvm-svn: 89790


# 2904aa9f 12-Nov-2009 Devang Patel <dpatel@apple.com>

"Attach debug info with llvm instructions" mode was enabled a month ago. Now make it permanent and remove old way of inserting intrinsics to encode debug info for line number and scopes.

llvm-svn: 8

"Attach debug info with llvm instructions" mode was enabled a month ago. Now make it permanent and remove old way of inserting intrinsics to encode debug info for line number and scopes.

llvm-svn: 87014

show more ...


1234567891011