search for: local_unnamed_addr

Displaying 20 results from an estimated 234 matches for "local_unnamed_addr".

2020 May 21
2
Updated llc does not compile my .ll files any more [addrspace on AVR problem?]
...t; target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.9" %Vs5UInt8 = type <{ i8 }> %Sp = type <{ i8* }> %Vs5Int32 = type <{ i32 }> %Sb = type <{ i1 }> %Vs6UInt16 = type <{ i16 }> @Started0 = external local_unnamed_addr global i8*, align 8 @D13 = external local_unnamed_addr constant i8, align 1 @OUTPUT = external local_unnamed_addr constant i8, align 1 @HIGH = external local_unnamed_addr constant i8, align 1 @LOW = external local_unnamed_addr constant i8, align 1 @_Tv4main12bufferLengthVs5UInt8 = hidden local_unna...
2020 May 21
2
Updated llc does not compile my .ll files any more [addrspace on AVR problem?]
...:128-n8:16:32:64-S128" > target triple = "x86_64-apple-macosx10.9" > > %Vs5UInt8 = type <{ i8 }> > %Sp = type <{ i8* }> > %Vs5Int32 = type <{ i32 }> > %Sb = type <{ i1 }> > %Vs6UInt16 = type <{ i16 }> > > @Started0 = external local_unnamed_addr global i8*, align 8 > @D13 = external local_unnamed_addr constant i8, align 1 > @OUTPUT = external local_unnamed_addr constant i8, align 1 > @HIGH = external local_unnamed_addr constant i8, align 1 > @LOW = external local_unnamed_addr constant i8, align 1 > @_Tv4main12bufferLengthVs5...
2020 May 21
2
Updated llc does not compile my .ll files any more [addrspace on AVR problem?]
...target triple = "x86_64-apple-macosx10.9" >> >> %Vs5UInt8 = type <{ i8 }> >> %Sp = type <{ i8* }> >> %Vs5Int32 = type <{ i32 }> >> %Sb = type <{ i1 }> >> %Vs6UInt16 = type <{ i16 }> >> >> @Started0 = external local_unnamed_addr global i8*, align 8 >> @D13 = external local_unnamed_addr constant i8, align 1 >> @OUTPUT = external local_unnamed_addr constant i8, align 1 >> @HIGH = external local_unnamed_addr constant i8, align 1 >> @LOW = external local_unnamed_addr constant i8, align 1 >> @_Tv4m...
2018 Feb 08
3
ThinLTO and linkonce_odr + unnamed_addr
...> > > 2018-02-07 12:45 GMT-08:00 Steven Wu <stevenwu at apple.com>: > >> >> >> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: >> >> > But it is interesting in general because according to the definition >> for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide >> as well. ThinLTO promotion can break that as well. >> >> What do you mean that the promotion can break that? >> >> The original description I found here: https://reviews.llvm.org/D20348 >> says that it is poss...
2018 Feb 08
0
ThinLTO and linkonce_odr + unnamed_addr
...om <mailto:stevenwu at apple.com>>: >> >> >>> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com <mailto:joker.eph at gmail.com>> wrote: >>> >>> > But it is interesting in general because according to the definition for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide as well. ThinLTO promotion can break that as well. >>> >>> What do you mean that the promotion can break that? >>> >>> The original description I found here: https://reviews.llvm.org/D20348 <https://reviews....
2018 Feb 08
2
ThinLTO and linkonce_odr + unnamed_addr
...2:45 GMT-08:00 Steven Wu <stevenwu at apple.com>: >> >>> >>> >>> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: >>> >>> > But it is interesting in general because according to the definition >>> for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide >>> as well. ThinLTO promotion can break that as well. >>> >>> What do you mean that the promotion can break that? >>> >>> The original description I found here: https://reviews.llvm.org/D20348 says >...
2018 Feb 09
2
ThinLTO and linkonce_odr + unnamed_addr
...;stevenwu at apple.com>: >>> >>>> >>>> >>>> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: >>>> >>>> > But it is interesting in general because according to the definition >>>> for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide >>>> as well. ThinLTO promotion can break that as well. >>>> >>>> What do you mean that the promotion can break that? >>>> >>>> The original description I found here: https://reviews.llvm....
2018 Feb 08
2
ThinLTO and linkonce_odr + unnamed_addr
2018-02-07 12:45 GMT-08:00 Steven Wu <stevenwu at apple.com>: > > > On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: > > > But it is interesting in general because according to the definition > for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide > as well. ThinLTO promotion can break that as well. > > What do you mean that the promotion can break that? > > The original description I found here: https://reviews.llvm.org/D20348 > says that it is possible to exclude a global...
2018 Feb 09
0
ThinLTO and linkonce_odr + unnamed_addr
...wu at apple.com>>: >>> >>> >>>> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com <mailto:joker.eph at gmail.com>> wrote: >>>> >>>> > But it is interesting in general because according to the definition for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide as well. ThinLTO promotion can break that as well. >>>> >>>> What do you mean that the promotion can break that? >>>> >>>> The original description I found here: https://reviews.llvm.org/D20348 <...
2016 Oct 10
8
Generate Register Indirect mode instruction
...t few examples to understand backend codegen. I have ported llvm LEG @ https://github.com/frasercrmck/llvm-leg to llvm 3.9 successfully. Currently, the LEG instructions are RISC load-store type instruction. I want to generate some instructions for register indirect mode, like following: IR: @a = local_unnamed_addr global i32 0, align 4 @b = local_unnamed_addr global i32 0, align 4 @c = local_unnamed_addr global i32 0, align 4 ; Function Attrs: norecurse nounwind define void @foo() { entry: %0 = load i32, i32* @a, align 4 %1 = load i32, i32* @b, align 4 %add = add nsw i32 %1, %0 store i32 %add, i32*...
2018 Feb 08
1
ThinLTO and linkonce_odr + unnamed_addr
...2:45 GMT-08:00 Steven Wu <stevenwu at apple.com>: >> >>> >>> >>> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: >>> >>> > But it is interesting in general because according to the definition >>> for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide >>> as well. ThinLTO promotion can break that as well. >>> >>> What do you mean that the promotion can break that? >>> >>> The original description I found here: https://reviews.llvm.org/D20348 says >...
2018 Feb 08
0
ThinLTO and linkonce_odr + unnamed_addr
...;stevenwu at apple.com <mailto:stevenwu at apple.com>>: > > >> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com <mailto:joker.eph at gmail.com>> wrote: >> >> > But it is interesting in general because according to the definition for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide as well. ThinLTO promotion can break that as well. >> >> What do you mean that the promotion can break that? >> >> The original description I found here: https://reviews.llvm.org/D20348 <https://reviews.llvm.org/D20348&...
2018 Feb 09
0
ThinLTO and linkonce_odr + unnamed_addr
...gt;: >>>> >>>> >>>>> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com <mailto:joker.eph at gmail.com>> wrote: >>>>> >>>>> > But it is interesting in general because according to the definition for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide as well. ThinLTO promotion can break that as well. >>>>> >>>>> What do you mean that the promotion can break that? >>>>> >>>>> The original description I found here: https://reviews.llvm...
2018 Feb 09
3
ThinLTO and linkonce_odr + unnamed_addr
...>>>> >>>>> >>>>> >>>>> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: >>>>> >>>>> > But it is interesting in general because according to the >>>>> definition for local_unnamed_addr, the symbol has to be linkonce_odr to be >>>>> auto hide as well. ThinLTO promotion can break that as well. >>>>> >>>>> What do you mean that the promotion can break that? >>>>> >>>>> The original description I found here: h...
2018 Feb 07
2
ThinLTO and linkonce_odr + unnamed_addr
> But it is interesting in general because according to the definition for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide as well. ThinLTO promotion can break that as well. What do you mean that the promotion can break that? The original description I found here: https://reviews.llvm.org/D20348 says that it is possible to exclude a global from the symbol table if th...
2018 Feb 07
0
ThinLTO and linkonce_odr + unnamed_addr
> On Feb 7, 2018, at 12:36 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: > > > But it is interesting in general because according to the definition for local_unnamed_addr, the symbol has to be linkonce_odr to be auto hide as well. ThinLTO promotion can break that as well. > > What do you mean that the promotion can break that? > > The original description I found here: https://reviews.llvm.org/D20348 <https://reviews.llvm.org/D20348> says that it...
2019 Feb 25
3
Why is there still ineffective code after -o3 optimization?
...uments where one is a reference. Therefore, I expect every instruction not altering the value at the 2nd arguments address should be ineffective. Here is the function definition (see below for full ll): define void @_Z27entityMainDataInputCallbackdRd(double %input, double* dereferenceable(8) %o0) local_unnamed_addr #0 { The ll below has been optimized using opt -O3 -S input.ll -o out.ll The cfg is plotted as png here: https://ibb.co/f1B0rnm My question is: why is there still some unnecessary 'lint' in the optimization result? E.G. from the splittedblock19 onwards: there is one effective instruction...
2016 Dec 02
2
Is the instruction %4 = select i1 %tobool.i, metadata !12, metadata !10 legal?
..., i32 } %struct.ordered_index_node = type { %struct.B, %struct.F } %struct.B = type { i32 } %struct.F = type { i32*, i32* } $_ZN1G13final_insert_Ev = comdat any $_ZN1G7insert_Ev = comdat any $_ZN1F4leftEv = comdat any $_ZN1F5rightEv = comdat any ; Function Attrs: uwtable define void @_Z3fn1v() local_unnamed_addr #0 { entry: %t = alloca %struct.G, align 8 %0 = bitcast %struct.G* %t to i8* call void @llvm.lifetime.start(i64 16, i8* %0) #5 call void @_ZN1G13final_insert_Ev(%struct.G* nonnull %t) call void @llvm.lifetime.end(i64 16, i8* %0) #5 ret void } ; Function Attrs: argmemonly nounwind decla...
2017 Aug 21
3
DragonEgg for GCC v8.x and LLVM v6.x is just able to work
...LLVM IR, the extension name is not important) ; ModuleID = 'test/hello.c' source_filename = "test/hello.c" target triple = "x86_64-redhat-linux" module asm "\09.ident\09\22GCC: (GNU) 6.4.1 20170727 (Red Hat 6.4.1-1) LLVM: 3.9.1\22" @__func__.2210 = internal local_unnamed_addr constant [4 x i8] c"foo\00" @.cst = private local_unnamed_addr constant [24 x i8] c"DEBUG: %s, line %d: %s\0A\00", align 8 @.cst.1 = private local_unnamed_addr constant [13 x i8] c"test/hello.c\00", align 8 @.cst.2 = private local_unnamed_addr constant [12 x i8] c&qu...
2017 Dec 19
4
A code layout related side-effect introduced by rL318299
...ed code layout issue. The performance regression is a side-effect of rL318299. I got two testcases a.ll and b.ll attached to illustrate the problem. a.ll was generated by rL318298 and b.ll was generated by rL318299. -------------------------- a.ll ---------------------------- declare void @_Z1fv() local_unnamed_addr #2 @i = global i8 0, align 1 define i8* @_Z1gPcS_S_(i8* nocapture readonly %d, i8* %h, i8* readnone returned %p3) local_unnamed_addr #3 { entry: br label %while.cond while.cond: ; preds = %while.body, %entry %h.addr.0 = phi i8* [ %h, %entry ], [ %add.ptr4...