Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] Question about ctors, dtors and sections on Windows"
2012 Sep 10
0
[LLVMdev] Question about ctors, dtors and sections on Windows
Hello
> On Windows, functions from llvm.global_ctors are placed in section .CRT$XCU,
> which is automatically called by the MS C Runtime.
Only if you link with MS runtime. Mingw follows standard .ctors / .dtors scheme.
> My expectation was that the dtors placed in .CRT$XTU which are the C
> terminator functions. Maybe there is a way to customize this?
Yes. Target (or,rather
2013 Aug 26
2
[LLVMdev] Proposal: Adding an optional association field to llvm.global_ctors
To implement http://llvm.org/PR16959<http://llvm.org/bugs/show_bug.cgi?id=16959>,
I need to add a new field to global_ctors.
Static data members of class template instantiations can have initializers
that must only run once on program startup. Itanium solves this with guard
variables and the emission of multiple initializers, only one of which
actually initializes the data at runtime.
2013 Sep 03
2
[LLVMdev] Proposal: Adding an optional association field to llvm.global_ctors
On Mon, Sep 2, 2013 at 5:18 AM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Reid,
>
> On 26/08/13 23:43, Reid Kleckner wrote:
>
>> To implement http://llvm.org/PR16959
>> <http://llvm.org/bugs/show_**bug.cgi?id=16959<http://llvm.org/bugs/show_bug.cgi?id=16959>>,
>> I need to add a new field to
>>
>> global_ctors.
>>
>>
2013 Sep 04
0
[LLVMdev] Proposal: Adding an optional association field to llvm.global_ctors
Hi Reid,
On 03/09/13 20:08, Reid Kleckner wrote:
> On Mon, Sep 2, 2013 at 5:18 AM, Duncan Sands <baldrick at free.fr
> <mailto:baldrick at free.fr>> wrote:
>
> Hi Reid,
>
> On 26/08/13 23:43, Reid Kleckner wrote:
>
> To implement http://llvm.org/PR16959
> <http://llvm.org/bugs/show___bug.cgi?id=16959
>
2013 Sep 02
0
[LLVMdev] Proposal: Adding an optional association field to llvm.global_ctors
Hi Reid,
On 26/08/13 23:43, Reid Kleckner wrote:
> To implement http://llvm.org/PR16959
> <http://llvm.org/bugs/show_bug.cgi?id=16959>, I need to add a new field to
> global_ctors.
>
> Static data members of class template instantiations can have initializers that
> must only run once on program startup. Itanium solves this with guard variables
> and the emission of
2017 Jun 20
2
JIT, LTO and @llvm.global_ctors: Looking for advise
Thanks Peter, this is very useful feedback.
I did manage to change the behavior of LinkOnlyNeeded to correctly import
all variables with AppendingLinkage. In fact, I discovered that there was
already something fishy. A variable with AppendingLinkage would get
imported correctly from the source module if the destination module
already contained a definition for that variable and wouldn't be
2014 May 01
3
[LLVMdev] Best way to clean up empty global_ctors
I talked about this with Nick in person months ago, and my understanding is
that GlobalOpt is also an enabling optimization that needs to run early.
For example, if we can eliminate an initializer to an internal global with
no other stores to it, we can propagate the result.
Maybe we should run it twice.
On Thu, May 1, 2014 at 11:01 AM, Rafael Espíndola <
rafael.espindola at gmail.com>
2017 Jun 20
2
JIT, LTO and @llvm.global_ctors: Looking for advise
Thanks for the hindsight.
I am currently working on a patch/potential fix which introduces a new
Linker::ImportIntrinsicGlobalVariables flag. The patch includes a unit
test reproducing the problem. Hopefully, that will help getting more
feedback.
Note that it might take a while before I am allowed to upload the patch
since I need approval from Autodesk Legal department.
Cheers,
Benoit
Benoit
2016 Oct 14
2
creating an .init section
Hi,
I would like to create an .init section in the LLVM backend. Can anyone shed me the light on how to do it? Do I have to create it in the clang?
Thanks,
Jin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161014/4f262397/attachment.html>
2012 Nov 01
1
[PATCH] com32: Include .init_array section in .ctors in linker script
From: Matt Fleming <matt.fleming at intel.com>
GCC 4.7 now places pointers to functions with the 'constructor' and
'destructor' function attributes in .init_array and .fini_array
sections, respectively, whereas previously they were in the .ctors and
.dtors sections. This change breaks the ctors/dtors code as it only
expects function to be in the .ctors and .dtors sections,
2014 Jul 30
2
[LLVMdev] Inconsistent third field in global_ctors (was Re: [llvm] r214321 - UseListOrder: Visit global values)
+reid, +llvmdev, -llvm-commits
> On 2014-Jul-30, at 11:56, Rafael Avila de Espindola <rafael.espindola at gmail.com> wrote:
>
>
>> I think the fix is to upgrade old-style global arrays (or reject
>> them?) in the .ll parser.
>>
>
> The .ll format is not stable, so you should be able to just reject it.
Looking a little deeper, it's not
2014 Aug 22
2
[LLVMdev] possible bug in COFFObjectFile::getSymbolType()
I'm working on adding data detection to llvm-objdump, so it prints out raw
data for symbols with type SymbolRef::ST_Data instead of disassembling them.
This causes llvm/test/MC/ARM/Windows/mov32t-range.s to fail, because the
symbol "truncation" comes back as SymbolRef::ST_Data, and the code gets
dumped as bytes instead of disassembled.
I traced the problem back to
2014 Jul 31
2
[LLVMdev] Inconsistent third field in global_ctors (was Re: [llvm] r214321 - UseListOrder: Visit global values)
On Wed, Jul 30, 2014 at 3:46 PM, Rafael Espíndola <
rafael.espindola at gmail.com> wrote:
> > Looking a little deeper, it's not "old-style" exactly; rejecting this
> > isn't trivial.
> >
> > - According to LangRef, the third field is optional [1].
> >
> > [1]:
> http://llvm.org/docs/LangRef.html#the-llvm-global-ctors-global-variable
2014 Aug 26
2
[LLVMdev] possible bug in COFFObjectFile::getSymbolType()
The section is .text, so I assume it’s got IMAGE_SCM_CNT_CODE set. The problem is the symbol is marked (read & execute), but the test is (read & !write), so the symbol gets marked as ST_Data instead of ST_Other.
From: David Majnemer [mailto:david.majnemer at gmail.com]
Sent: Friday, August 22, 2014 5:44 PM
To: Ted Woodward
Cc: LLVM Developers Mailing List
Subject: Re: [LLVMdev]
2017 Jun 19
2
JIT, LTO and @llvm.global_ctors: Looking for advise
Hi Everyone,
We are looking for advise regarding the proper use of LTO in
conjunction with just-in time generated code. Our usage scenario goes
as follows.
1. Our front-end generates an LLVM module.
2. A small runtime support library is linked-in. The runtime
library is distributed as bitcode. It is generated using "clang++
-emit-llvm' and 'llvm-link'. This allows
2018 Jan 26
3
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
I'm now thinking that there's a bug in either obj2yaml or yaml2obj, because
if I run just those two tools on my codebase it generates yaml files that
can't be decoded, will try now to not add any section to the obj file in
llvm-objcopy to see if I can link with obj files that I rewrite (but
without adding symbols or sections).
One of the bugs that do annoy me is that the timedatestamp
2014 Apr 30
4
[LLVMdev] Best way to clean up empty global_ctors
Hi,
I'd like to fix PR19590, which is about llvm.global_ctors containing
functions that end up being empty after optimization (which causes the
linker to add useless init_array entries to the output binary).
globalopt removes empty functions from llvm.global_ctors, but by the
time the function becomes empty globalopt has already run and it
doesn't run again.
I'm wondering what the
2018 Jan 26
0
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
Interesting. If it is generating yaml files that can't be decoded, then
definitely sounds like a bug. If you can provide a reduced test case we
can try to fix it, but admittedly it can often take some effort to generate
a reduced test case. The best way is to use creduce. Use cl or clang-cl
and write the pre-processed output to a file, then run creduce on that file
with a test that
2018 Jan 26
0
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
Hmm, ok. In that case let me try again without my local changes. Maybe
they are getting in the way :-/
On Fri, Jan 26, 2018 at 9:51 AM Leonardo Santagada <santagada at gmail.com>
wrote:
> it is identical to me... wierd.
>
> On Fri, Jan 26, 2018 at 6:49 PM, Zachary Turner <zturner at google.com>
> wrote:
>
>> (Ignore the fact that my hashes are 8 byte in the
2014 Jul 31
2
[LLVMdev] Inconsistent third field in global_ctors (was Re: [llvm] r214321 - UseListOrder: Visit global values)
> On 2014-Jul-30, at 18:05, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
>
>> On 2014-Jul-30, at 17:19, Reid Kleckner <rnk at google.com> wrote:
>>
>>> On Wed, Jul 30, 2014 at 3:46 PM, Rafael Espíndola <rafael.espindola at gmail.com> wrote:
>>>> Looking a little deeper, it's not "old-style" exactly; rejecting this