Displaying 6 results from an estimated 6 matches for "emitmappingsymbol".
2012 Oct 17
0
[LLVMdev] R_ARM_ABS32 disassembly with integrated-as
...eference(MCSymbol *Alias, const MCSymbol *Symbol);
virtual void EmitSymbolAttribute(MCSymbol *Symbol, MCSymbolAttr Attribute);
@@ -108,6 +111,7 @@ public:
private:
virtual void EmitInstToFragment(const MCInst &Inst);
virtual void EmitInstToData(const MCInst &Inst);
+ virtual void EmitMappingSymbol(bool IsData);
void fixSymbolsInTLSFixups(const MCExpr *expr);
@@ -119,6 +123,11 @@ private:
std::vector<LocalCommon> LocalCommons;
SmallPtrSet<MCSymbol *, 16> BindingExplicitlySet;
+
+ // FIXME: This information is in ARMAsmBackend, but we currently
+ // have no way...
2012 Oct 16
2
[LLVMdev] R_ARM_ABS32 disassembly with integrated-as
Attached is an example of how to reproduce the issue. It uses a C
file that happens to has a bunch of switch statements which are
encoded as jump tables, giving us data-in-code. Usage:
To build object files with clang via the -integrated-as versus via GCC:
$ export NDK_DIR=<my_ndk_dir>
$ export LLVM_DIR=<my_llvm_bin_dir>
$ make
To test that the generated objects contain the same
2012 Oct 17
2
[LLVMdev] R_ARM_ABS32 disassembly with integrated-as
On 17 October 2012 15:05, Greg Fitzgerald <garious at gmail.com> wrote:
> + virtual void EmitMappingSymbol(bool IsData);
I'd use an enum, or have multiple internal implementations...
EmitDataMappingSymbol -> { nop on base class, on ARM, prints "$d" }
EmitCodeMappingSymbol -> { nop on base class, calling either
EmitThumbMappingSymbol or EmitARMMappingSymbol (private) on ARM }
>...
2012 Oct 16
0
[LLVMdev] R_ARM_ABS32 disassembly with integrated-as
Hi Greg,
I'm afraid I've not looked into the infrastructure Jim put into place,
so I've not really been able to answer the "how should I do it"
questions, but hopefully I can comment on the ABI.
> And probably questions for Tim, are these "section-relative" mapping
> symbols, as defined in 4.6.5.1 of the ELF for ARM document?
Yes, they are.
> And what
2012 Oct 17
0
[LLVMdev] R_ARM_ABS32 disassembly with integrated-as
...ot;include/llvm/MC" and added a
MCELFStreamer.h to the same directory. That okay to do?
-Greg
On Wed, Oct 17, 2012 at 7:22 AM, Renato Golin <rengolin at systemcall.org>wrote:
> On 17 October 2012 15:05, Greg Fitzgerald <garious at gmail.com> wrote:
> > + virtual void EmitMappingSymbol(bool IsData);
>
> I'd use an enum, or have multiple internal implementations...
>
> EmitDataMappingSymbol -> { nop on base class, on ARM, prints "$d" }
> EmitCodeMappingSymbol -> { nop on base class, calling either
> EmitThumbMappingSymbol or EmitARMMappingSymb...
2012 Oct 16
5
[LLVMdev] R_ARM_ABS32 disassembly with integrated-as
Getting closer... When emitting symbols, how do I set the symbol's value
to the address of the current instruction? Do I need to emit a label in
the current section and another that uses the former to point to the
latter? If possible, a code sample would be very helpful.
And probably questions for Tim, are these "section-relative" mapping
symbols, as defined in 4.6.5.1 of the