Displaying 20 results from an estimated 4000 matches similar to: "[LLVMdev] [patch] move ExtWeakSymbols to AsmPrinter"
2006 Dec 10
0
[LLVMdev] [patch] move ExtWeakSymbols to AsmPrinter
On Sat, 9 Dec 2006, [UTF-8] Rafael Esp?ndola wrote:
> The attached patch moves the ExtWeakSymbols to the AsmPrinter class
> and the code that emits the ".weak" directives to
> AsmPrinter::doFinalization.
>
> This is just code factoring. No functionality changes.
Looks good, one request though: if practical, it would be nice to switch
this to be set<GlobalValue*>
2006 Dec 11
2
[LLVMdev] [patch] move ExtWeakSymbols to AsmPrinter
> Looks good, one request though: if practical, it would be nice to switch
> this to be set<GlobalValue*> instead of set<std::string>.
Attached
> -Chris
Rafael
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm.patch
Type: text/x-patch
Size: 7646 bytes
Desc: not available
URL:
2006 Dec 09
2
[LLVMdev] [PATCH] print .weak directives
The attached patch makes the AsmPrinter emit one .weak directive for
each weak global variable that is referenced at least once in a global
table. It uses a std::set to print only one directive.
Thoughts?
Best Regards,
Rafael
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm.patch
Type: text/x-patch
Size: 2945 bytes
Desc: not available
URL:
2006 Dec 06
2
[LLVMdev] weak linkage
I am implementing weak linkage support on the ARM backend and I
noticed this code on the X86 and PPC backends:
------------------------------------------------
// If the initializer is a extern weak symbol, remember to emit the weak
// reference!
if (const GlobalValue *GV = dyn_cast<GlobalValue>(C))
if (GV->hasExternalWeakLinkage())
ExtWeakSymbols.insert(Mang->getValueName(GV));
2006 Dec 09
1
[LLVMdev] [PATCH] print .weak directives
> I'm sorry, I must be missing something here:
>
> In order to have weak linkage (I'm ignoring external weak for the moment)
> a global has to be defined in the LLVM code. Because it is defined in the
> LLVM code, it will have to be printed out by the target asm printer
> somewhere. When that happens, it will get a .weak directive emitted for
> it.
It should, but
2006 Dec 09
0
[LLVMdev] [PATCH] print .weak directives
On Sat, 9 Dec 2006, [UTF-8] Rafael Esp?ndola wrote:
> The attached patch makes the AsmPrinter emit one .weak directive for
> each weak global variable that is referenced at least once in a global
> table. It uses a std::set to print only one directive.
I'm sorry, I must be missing something here:
In order to have weak linkage (I'm ignoring external weak for the moment)
a global
2013 Feb 15
2
[LLVMdev] GCMetadataPrinter::finishAssembly not executed?
Hi Pedro (et al.),
On 02/14/2013 11:43 PM, Pedro Artigas wrote:
> I believe what is going on is that there is an issue with the way that information is deleted (the CG information).
Yeap, that's exactly the problem! :-) I noticed that the
GCModuleInfo::iterator (line 931 in
lib/CodeGen/AsmPrinter/AsmPrinter.cpp) is empty and, thus,
GCMetadataPrinter::finishAssembly is never called.
2013 Feb 15
0
[LLVMdev] GCMetadataPrinter::finishAssembly not executed?
Hello Yiannis,
I am not an expert on metadata or the CG information but one of the two has to happen:
- Simply moving the deleter pass to a different spot
- Changing the doFinalization of another pass (Printer?) to do the deleter pass job (this should work now because the doFinalization order is the reverse of the doInitialization order)
Option 1 is a smaller change, option 2 will make the code
2013 Feb 14
2
[LLVMdev] GCMetadataPrinter::finishAssembly not executed?
Sorry for the triple-posting! :-$
On 02/14/2013 04:30 PM, Yiannis Tsiouris wrote:
> On 02/10/2013 08:47 PM, Yiannis Tsiouris wrote:
>> After rebasing my local LLVM repo to ToT, I noticed that the
>> finishAssembly function is not executed and, thus, the stack map is not
>> printed at all.
>>
>> Is this a known issue or I 'm doing something wrong?
>>
2013 Feb 14
0
[LLVMdev] GCMetadataPrinter::finishAssembly not executed?
Hello Yiannis,
I believe what is going on is that there is an issue with the way that information is deleted (the CG information). Right now there is a pass whose only job is to delete that information (CGInfoDeleter) and that pass deletes the info before the AsmPrinter has a chance to call the finishAssembly function. Right now the order that the doFinalization is called on passes is the reverse
2013 Feb 19
1
[LLVMdev] [PATCH] Fix GCMetadaPrinter::finishAssembly not executed
As discussed in LLVMdev [1], due to the execution order of
doFinalization functions, the GC information were deleted before
AsmPrinter::doFinalization was executed. Thus, the
GCMetadataPrinter::finishAssembly was never called.
The attached patch fixes that by moving the code of the
GCInfoDeleter::doFinalization to Printer::doFinalization. Pedro (cc'ed)
has already taken a look at this and he
2015 May 06
2
[LLVMdev] (Possibly buggy?) doFinalization method behavior of FunctionPass
On 5/6/15 11:15 AM, Kuperstein, Michael M wrote:
>
> I’ve always thought that the only guarantee is that
> doFinalization(Module &M) runs after runOnFunction() was executed for
> all functions in M, and there’s no guarantee it runs *immediately* after.
>
> That is, a PM may run a bunch of function passes over each function,
> and only then call doFinazliation() for each
2006 Dec 20
0
[LLVMdev] [patch] arm: external weak in constant pool
Hi Lauro,
Just a stylistic remark; In your "llvm.patch" file, there are tabs in
these lines:
+ if (GV->hasExternalWeakLinkage()) {
+ ExtWeakSymbols.insert(GV);
+ }
Others will need to review the patch for correctness, though.
-bw
On 12/20/06, Lauro Ramos Venancio <lauro.venancio at gmail.com> wrote:
> Adds external weak symbols of constant pool to ExtWeakSymbols set.
2006 Dec 20
1
[LLVMdev] [patch] arm: external weak in constant pool
without tabs
Lauro
2006/12/20, Bill Wendling <isanbard at gmail.com>:
>
> Hi Lauro,
>
> Just a stylistic remark; In your "llvm.patch" file, there are tabs in
> these lines:
>
> + if (GV->hasExternalWeakLinkage()) {
> + ExtWeakSymbols.insert(GV);
> + }
>
> Others will need to review the patch for correctness, though.
>
2006 Dec 20
2
[LLVMdev] [patch] arm: external weak in constant pool
Adds external weak symbols of constant pool to ExtWeakSymbols set.
Lauro
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20061220/1aaa0c7b/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm.patch
Type: text/x-patch
Size: 1021 bytes
Desc: not available
2006 Dec 09
2
[LLVMdev] [patch] emit .weak for zero initialized weak variables
The attached patches makes all backends print a .weak directive for
zero initialized variables. GCC does it on x86-64 and ARM. I assume
that it should be done on all architectures.
The patch also adds a test to the ARM backend? Should I copy it to all backends?
Comments?
Thanks,
Rafael
P.S.: I find the doFinalization code a bit confusing. Would you
welcome a cleanup patch?
-------------- next
2015 May 19
2
[LLVMdev] Module crash when adding CallInst
Hi,
I am learning to write LLVM modules. I am using IRBuilder to insert calls
to an existing function. The call is to be inserted at a random location in
every function in the code. The call does get inserted, however, the module
crashes later (after doFinalization()). The crash happens only sometimes,
not always.
These are the kind of instructions that I see in the generated code.
%callins =
2010 Jul 19
2
[LLVMdev] VMkit AOT build problem: llc crushed on glibj compilation to native(.s) file
Hi,
Trying to build AOT version of vmkit java,
building for that classpath glibj.zip:
$ cd vmkit/tools/vmjc/libvmjc
$ make ENABLE_OPTIMIZED=1 DISABLE_ASSERTIONS=1 REQUIRES_FRAME_POINTER=1
has eventually, after 50 minutes, brought:
<<<
llvm[0]: Compiling glibj.zip to llvm
llvm[0]: Optimizing glibj.zip
llvm[0]: Compiling glibj.zip.bc to native
UNREACHABLE executed!
0 llc
2011 May 23
2
[LLVMdev] Debug llc crash using bugpoint
Hi,
What is the best way to debug an llc crash using bugpoint?
I am getting the following crash that I would like to reduce
llc: /home/vadve/aggarwa4/llvm29/llvm-2.9/lib/MC/MCAsmStreamer.cpp:273:
virtual void<unnamed>::MCAsmStreamer::EmitLabel(llvm::MCSymbol*): Assertion
`Symbol->isUndefined() && "Cannot define a symbol twice!"' failed.
0 llc
2014 Oct 29
4
[LLVMdev] Emit a jump instruction to a place inside basicblock
Hi all,
I'm a beginner in LLVM. Currently, I want to implement a pass that
generates a jump table. The entry in that table is a jump to some place
(may be an instruction) in a basic block.
I'm reading the JumpTable code in llvm 3.5, there is a table which contains
jump entries to functions. In AsmPrinter::doFinalization function from file
lib/CodeGen/AsmPrinter/AsmPrinter.cpp, it gets a