similar to: [LLVMdev] Proposal: global symbol offsets

Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] Proposal: global symbol offsets"

2014 Apr 01
2
[LLVMdev] [RFC] Section Declarations in LLVM IR
On Tue, Mar 11, 2014 at 12:17 PM, Rafael Espíndola < rafael.espindola at gmail.com> wrote: > > I think LLVM needs new IR to represent these semantics properly. > Cool! This proposal makes a lot of sense to me. > > - Sections have linkage, all Values inside of a section must agree with > the > > section's linkage. > > This seems way too restrictive and I
2020 Aug 07
2
JIT interaction with linkonce_odr global variables
Hello, I recently hit an issue when JIT'ing my generated IR using llvm::orc::LLJIT. My IR contains the following definition of a global variable: > $_ZZ23TestStaticVarInFunctionbE1x = comdat any > @_ZZ23TestStaticVarInFunctionbE1x = linkonce_odr dso_local global i32 123, > comdat, align 4 > And in my host process, there exists the same symbol. I would expect LLJIT to resolve the
2014 May 27
6
[LLVMdev] [PATCH] Symbol offsets
Somehow this cover letter was dropped from my symbol offsets patch set: 1. http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-May/073200.html 2. http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-May/073201.html Original message ----------------- About a year ago a proposal suggesting symbol offsets was brought to this list[1]. This proposal goes hand-in-hand with the prefix data proposal[2]
2020 Jan 13
2
Incorrect code generation when using -fprofile-generate on code which contains exception handling (Windows target)
I think this is the same underlying issue as https://bugs.llvm.org/show_bug.cgi?id=40320. CCing Reid, who's had a bunch of thoughts on this in the past. On 1/11/20, 10:25 AM, "llvm-dev on behalf of Chrulski, Christopher M via llvm-dev" <llvm-dev-bounces at lists.llvm.org on behalf of llvm-dev at lists.llvm.org> wrote: Hi, I've run into a bug with the LLVM
2020 Jan 14
2
Incorrect code generation when using -fprofile-generate on code which contains exception handling (Windows target)
I think the simplest, most complete, short term fix, would be to call llvm::colorEHFunclets, and to have the relevant instrumentation passes apply the appropriate funclet bundle when inserting function calls. It's not elegant because it means every simple instrumentation pass that inserts regular function calls (ASan, TSan, MSan, instrprof, etc) needs to be funclet-aware. But, it will work,
2014 Mar 11
2
[LLVMdev] [RFC] Section Declarations in LLVM IR
Hi all, I'd like to propose that LLVM IR have a mechanism to describe sections in a more explicit way than we can today. Currently, we provide an attribute called "section" on GlobalVariables and Functions. This attribute will choose which section the Value will end up in. However, it does not describe the attributes of the section. Without a way of describing the section, we try
2010 Jul 14
0
[LLVMdev] CallGraphSCCPass: symbol not found
-----Original Message----- From: Trevor Harmon <Trevor.W.Harmon at nasa.gov> Sent: Tuesday, July 13, 2010 4:46 PM To: Duncan Sands <baldrick at free.fr> Cc: llvmdev at cs.uiuc.edu <llvmdev at cs.uiuc.edu> Subject: Re: [LLVMdev] CallGraphSCCPass: symbol not found > On Jul 12, 2010, at 11:37 PM, Duncan Sands wrote: > > > $ c++filt _ZTIN4llvm16CallGraphSCCPassE >
2018 Feb 09
0
ThinLTO and linkonce_odr + unnamed_addr
Add Rafael here. Because he basically ask me the same question in my commit. I wonder why clang choose to do unnamed_addr instead of just do visibility hidden. If linkonce_odr + unnamed_addr is just hidden, is the only difference linkonce_odr + unnamed_addr not in the symbol table? Steven > On Feb 9, 2018, at 10:50 AM, Peter Collingbourne <peter at pcc.me.uk> wrote: > > I wonder
2018 Feb 08
1
ThinLTO and linkonce_odr + unnamed_addr
On Thu, Feb 8, 2018 at 10:44 AM, Steven Wu via llvm-dev < llvm-dev at lists.llvm.org> wrote: > > > On Feb 8, 2018, at 10:28 AM, Mehdi AMINI <joker.eph at gmail.com> wrote: > > > > 2018-02-08 9:33 GMT-08:00 Steven Wu <stevenwu at apple.com>: > >> >> >> On Feb 7, 2018, at 4:03 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: >>
2018 Feb 09
0
ThinLTO and linkonce_odr + unnamed_addr
Are we agreeing on this is what we should do? If so, I will prepare a patch. Steven > On Feb 8, 2018, at 11:07 AM, Mehdi AMINI <joker.eph at gmail.com> wrote: > > > > 2018-02-08 10:44 GMT-08:00 Steven Wu <stevenwu at apple.com <mailto:stevenwu at apple.com>>: > > >> On Feb 8, 2018, at 10:28 AM, Mehdi AMINI <joker.eph at gmail.com
2018 Feb 09
3
ThinLTO and linkonce_odr + unnamed_addr
I wonder whether we could change the frontend to always give hidden visibility to globals which are linkonce_odr unnamed_addr. That way, the mechanism would just work in ELF as well and would not require LTO. Peter On Fri, Feb 9, 2018 at 10:46 AM, Steven Wu via llvm-dev < llvm-dev at lists.llvm.org> wrote: > The one that doesn’t require global analysis is commit in r324757. > >
2018 Feb 09
0
ThinLTO and linkonce_odr + unnamed_addr
The one that doesn’t require global analysis is commit in r324757. The global analysis will require adding a field into GlobalSummary. Let me do some research. The implementation should not be hard but I don’t want to break bitcode compatibility if that applies to the summary. Steven > On Feb 9, 2018, at 9:33 AM, Teresa Johnson <tejohnson at google.com> wrote: > > SGTM. I would
2010 Jul 13
0
[LLVMdev] CallGraphSCCPass: symbol not found
Hi Trevor, > I've written a CallGraphSCCPass that compiles successfully, but when I > try to run it with opt, it fails: > > Symbol not found: __ZTIN4llvm16CallGraphSCCPassE $ c++filt _ZTIN4llvm16CallGraphSCCPassE typeinfo for llvm::CallGraphSCCPass LLVM TOT has RTTI turned off as far as I know (not sure about 2.7). Are you making use of RTTI? Ciao, Duncan.
2018 Feb 08
0
ThinLTO and linkonce_odr + unnamed_addr
> On Feb 8, 2018, at 10:28 AM, Mehdi AMINI <joker.eph at gmail.com> wrote: > > > > 2018-02-08 9:33 GMT-08:00 Steven Wu <stevenwu at apple.com <mailto:stevenwu at apple.com>>: > > >> On Feb 7, 2018, at 4:03 PM, Mehdi AMINI <joker.eph at gmail.com <mailto:joker.eph at gmail.com>> wrote: >> >> >> >> 2018-02-07
2018 Feb 07
0
ThinLTO and linkonce_odr + unnamed_addr
>From looking at the code, it seems like LLVM is basically opting MachO into -fvisibility-inlines-hidden all the time, i.e. if the function is linkonce, it's discardable, so mark it hidden to pretend the compiler inlined it and discarded it. However, this isn't conforming, because the addresses of inline functions will no longer compare equal across DSOs. Realistically, nobody cares
2018 Feb 08
2
ThinLTO and linkonce_odr + unnamed_addr
2018-02-08 10:44 GMT-08:00 Steven Wu <stevenwu at apple.com>: > > > On Feb 8, 2018, at 10:28 AM, Mehdi AMINI <joker.eph at gmail.com> wrote: > > > > 2018-02-08 9:33 GMT-08:00 Steven Wu <stevenwu at apple.com>: > >> >> >> On Feb 7, 2018, at 4:03 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: >> >> >> >>
2018 Feb 08
0
ThinLTO and linkonce_odr + unnamed_addr
> On Feb 7, 2018, at 4:03 PM, Mehdi AMINI <joker.eph at gmail.com> wrote: > > > > 2018-02-07 12:45 GMT-08:00 Steven Wu <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
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
2018 Feb 07
2
ThinLTO and linkonce_odr + unnamed_addr
> From looking at the code, it seems like LLVM is basically opting MachO into -fvisibility-inlines-hidden all the time, i.e. if the function is linkonce, it's discardable, so mark it hidden to pretend the compiler inlined it and discarded it. However, this isn't conforming, because the addresses of inline functions will no longer compare equal across DSOs. I think there is a nuance, it
2018 Feb 09
2
ThinLTO and linkonce_odr + unnamed_addr
SGTM. I would do as 2 separate patches, the local per-module case, then the case that requires linker/global analysis. Thanks, Teresa On Fri, Feb 9, 2018 at 9:20 AM, Steven Wu via llvm-dev < llvm-dev at lists.llvm.org> wrote: > Are we agreeing on this is what we should do? If so, I will prepare a > patch. > > Steven > > > On Feb 8, 2018, at 11:07 AM, Mehdi AMINI