Displaying 19 results from an estimated 19 matches for "appendinglinkage".
2015 Jul 24
3
[LLVMdev] LLVM linkage flags
...yLinkage: Keep one copy of function when linking (inline)
>
> LinkOnceODRLinkage: Same, but only replaced by something equivalent.
>
> WeakAnyLinkage: Keep one copy of named function when linking (weak)
>
> WeakODRLinkage: Same, but only replaced by something equivalent.
>
> AppendingLinkage: Special purpose, only applies to global arrays.
>
> InternalLinkage: Rename collisions when linking (static functions).
>
> PrivateLinkage: Like Internal, but omit from symbol table.
>
> ExternalWeakLinkage: ExternalWeak linkage description.
>
> CommonLinkage: Tentative def...
2009 Jul 27
4
[LLVMdev] PROPOSAL : Introduce NamedMetadata
...Nodes only. The
NamedMetadata is always implicitly typed as metadata. LLVM bitcode
reader and writer will keep track of NamedMetadata in a Module. A
module can use metadata that is not listed in any NamedMetadata value.
A module can have multiple NamedMetadata values. NamedMetadata
implicitly uses AppendingLinkage. A NamedMetadata value has zero
uses.
The NamedMetadata can be used to describe Front End specific types for
the optimizer's use. Another potential use is to encode debug
information for a global variable. I do not intend to make @llvm.used
a NamedMetadata value.
-
Devang
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 imported
otherwiseÅ My local fix ensures that it correct...
2015 Jul 14
3
[LLVMdev] RFC: ThinLTO Symbol Linkage and Renaming
...especially for the table at the end) may not come through
in the copied text below well.
Thanks!
Teresa
ThinLTO Symbol Linkage and Renaming
1 Introduction
2 Non-Discardable Values
2.2 Linkage Effects
2.2.2 ExternalLinkage
2.2.1 WeakAnyLinkage
2.2.2 WeakODRLinkage
2.2.3 AppendingLinkage
2.2.4 CommonLinkage
3 Linkonce Values
3.1 Linkage Effects
3.2 Importing Strategy
4 Static Values
4.1 Static Variables
4.2 Static Functions
4.3 Static Promotion
4.3.1 Linkage Effects
4.3.2 Renaming
5 Linkage Change Summary Table
1 Introduction
This document describ...
2009 Jul 27
0
[LLVMdev] PROPOSAL : Introduce NamedMetadata
...edMetadata is always implicitly typed as metadata. LLVM bitcode
> reader and writer will keep track of NamedMetadata in a Module. A
> module can use metadata that is not listed in any NamedMetadata value.
> A module can have multiple NamedMetadata values. NamedMetadata
> implicitly uses AppendingLinkage.
And DefaultVisibility and a default Section and an Alignment of 1?
GlobalValues carry some amount of baggage here.
Dan
2008 Apr 24
1
[LLVMdev] Question about appending linkage
...try and solve the general case instead of just my own
particular need.
Unfortunately I can't think of any reasonable way to do it that doesn't
involve polluting the IR language with a lot of special cases. Here are
some ideas that I thought of and discarded:
* Have a special "PostAppendingLinkage" type which acts just like
"AppendingLinkage", except that it is guaranteed to come after all
"AppendingLinkage" sections have been appended. Thus, you could use this
to nail a sentinel value at the end of the list. Rejected because the
linker has no control over the or...
2003 Nov 23
3
[LLVMdev] Linkage Types again!
...t I'm trying to do is create a "global appending" array. In
compilation units that don't include "main", I generate it with:
TheStack = new GlobalVariable(
/*type=*/ stack_type,
/*isConstant=*/ false,
/*Linkage=*/ GlobalValue::AppendingLinkage,
/*initializer=*/ 0,
/*name=*/ "_stack_",
/*parent=*/ TheModule
);
Note that lack of an...
2008 Apr 02
0
[LLVMdev] Question about appending linkage
Talin wrote:
> I'm trying to figure out how to do static initialization (like static
> constructors in C++ or Java). I figured I would use appending linkage -
> that is, for each module I'd generate a function that did all of the
> static initialization for that module, and then I'd put a pointer to
> that function in an array with appending linkage. Then my
>
2008 Apr 02
3
[LLVMdev] Question about appending linkage
I'm trying to figure out how to do static initialization (like static
constructors in C++ or Java). I figured I would use appending linkage -
that is, for each module I'd generate a function that did all of the
static initialization for that module, and then I'd put a pointer to
that function in an array with appending linkage. Then my
compiler-generated startup code would simply
2015 Jul 21
1
[LLVMdev] RFC: ThinLTO Symbol Linkage and Renaming
...gt; >
> > ThinLTO Symbol Linkage and Renaming
> >
> >
> > 1 Introduction
> > 2 Non-Discardable Values
> > 2.2 Linkage Effects
> > 2.2.2 ExternalLinkage
> > 2.2.1 WeakAnyLinkage
> > 2.2.2 WeakODRLinkage
> > 2.2.3 AppendingLinkage
> > 2.2.4 CommonLinkage
> > 3 Linkonce Values
> > 3.1 Linkage Effects
> > 3.2 Importing Strategy
> > 4 Static Values
> > 4.1 Static Variables
> > 4.2 Static Functions
> > 4.3 Static Promotion
> > 4.3.1 Linkage Effects
&g...
2009 Jul 28
0
[LLVMdev] PROPOSAL : Introduce NamedMetadata
...dMetadata is always implicitly typed as metadata. LLVM bitcode
> reader and writer will keep track of NamedMetadata in a Module. A
> module can use metadata that is not listed in any NamedMetadata value.
> A module can have multiple NamedMetadata values. NamedMetadata
> implicitly uses AppendingLinkage. A NamedMetadata value has zero
> uses.
>
> The NamedMetadata can be used to describe Front End specific types for
> the optimizer's use. Another potential use is to encode debug
> information for a global variable. I do not intend to make @llvm.used
> a NamedMetadata value...
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
2009 Jul 27
2
[LLVMdev] PROPOSAL : Introduce NamedMetadata
...ways implicitly typed as metadata. LLVM bitcode
>> reader and writer will keep track of NamedMetadata in a Module. A
>> module can use metadata that is not listed in any NamedMetadata value.
>> A module can have multiple NamedMetadata values. NamedMetadata
>> implicitly uses AppendingLinkage.
>
> And DefaultVisibility and a default Section and an Alignment of 1?
> GlobalValues carry some amount of baggage here.
I checked these three. The code generator does not generate any code
for these NamedMetadata so we can just use vanilla default values here
without any harm.
-
Devang
2017 Jun 08
2
[RFC][ThinLTO] llvm-dis ThinLTO summary dump format
...Hotness: Unknown
> - Name: printf
> GUID: 7383291119112528047
> Hotness: Unknown
> llvm.used:
> - GUID: 15665353970260777610
> Kind: GlobalVar
> Linkage: AppendingLinkage
> NotEligibleToImport: true
> Live: true
> TypeIdMap:
> WithGlobalValueDeadStripping: false
> ...
>
> Thanks,
> Charles
>
>
> On Wed, Jun 7, 2017 at 12:38 PM, Teresa Johnson <tejohnson at google.com>
> wrote:
>
>>
>>
&g...
2015 Jul 21
2
[LLVMdev] RFC: ThinLTO Symbol Linkage and Renaming
...escribed in Section
> 4.3.1. In all other cases the linkage in the original module stays the
> same, and therefore is not noted in the table below.
> >
> > Note that there are no InternalLinkage, PrivateLinkage,
> AvailableExternallyLinkage, LinkOnce*Linkage, Weak*Linkage,
> AppendingLinkage and CommonLinkage declarations. There are no
> ExternalWeakLinkage definitions.
> >
> >
> +---------------------------------+------------------------------------------------+
> > | | Importing Module Linkage
> |
> > |...
2020 Feb 18
4
LLD doesn't handle globals with appending linkage
Hello.
I'm posting this question here, because there seem to be no LLD-specific
mailing list. Sorry in advance if this is wrong one.
I compile two C source with following command:
clang -flto -o %name.bc %name.c
LLVM is augmented with my custom pass, which amongst other things create a
global with appending linkage:
@myvar = appending constant [1 x [1 x i8]*] ...
I also have another pass
2017 Jun 07
2
[RFC][ThinLTO] llvm-dis ThinLTO summary dump format
On Wed, Jun 7, 2017 at 8:58 AM, Charles Saternos <charles.saternos at gmail.com
> wrote:
> Alright, now it outputs YAML in the following format:
>
> ---
> NamedGlobalValueMap:
> X:
> - Kind: GlobalVar
> Linkage: ExternalLinkage
> NotEligibleToImport: false
> Live: false
> a:
> - Kind:
2003 Nov 21
2
[LLVMdev] Need Help With Verifier
...>
> TheStack = new GlobalVariable(
> /*type=*/ stack_type,
> /*isConstant=*/ false,
> /*Linkage=*/ GlobalValue::AppendingLinkage,
> /*initializer=*/0,
> /*name=*/ "_stack_",
> /*parent=*/ TheModule
> );
Shouldn't that create just a single dimensioned array? Note that
"stack_size" is an integer with the value 1024.
Finally, I have some confusion about how SSA works with L...
2017 Jul 17
3
[RFC][ThinLTO] llvm-dis ThinLTO summary dump format
...GUID: 7383291119112528047
>>>>> Hotness: Unknown
>>>>> llvm.used:
>>>>> - GUID: 15665353970260777610
>>>>> Kind: GlobalVar
>>>>> Linkage: AppendingLinkage
>>>>> NotEligibleToImport: true
>>>>> Live: true
>>>>> TypeIdMap:
>>>>> WithGlobalValueDeadStripping: false
>>>>> ...
>>>>>
>>>>> Thanks,
>>>>> Charles
>...