search for: __emultls_get_address

Displaying 5 results from an estimated 5 matches for "__emultls_get_address".

Did you mean: ___emutls_get_address
2017 Feb 08
3
[cfe-dev] lli: LLVM ERROR: Cannot select: X86ISD::WrapperRIP TargetGlobalTLSAddress:i64
> Unfortunately it doesn't look like lli has support for emulated TLS either, though that would be pretty simple to add. As an experiment I've `llvm::createLowerEmuTLSPass` into lli which added @__emutls_v.x and @__emutls_v.t. However i didn't have any __emultls_get_address calls in my IR. Is there a llvm pass or compiler-flag that replaces thread_locals with appropriate __emultls_get_address calls ? 2017-02-08 14:53 GMT+00:00 Tim Northover <t.p.northover at gmail.com>: > On 8 February 2017 at 04:57, Gaetano Checinski > <gaetano.checinski at gmail.c...
2017 Feb 08
2
[cfe-dev] lli: LLVM ERROR: Cannot select: X86ISD::WrapperRIP TargetGlobalTLSAddress:i64
What exactly do the compiler flags`-femulated-tls` and `tls-model` do ? Why does tls-emulation not solve the problem ? Looking at the generated IR, it seems not to remove thread_local variable declarations. What is the reasoning behind that ? 2017-02-07 16:27 GMT+00:00 Gaetano Checinski <gaetano.checinski at gmail.com>: > > got a minimal example now: > extern thread_local
2017 Feb 08
0
[cfe-dev] lli: LLVM ERROR: Cannot select: X86ISD::WrapperRIP TargetGlobalTLSAddress:i64
...February 2017 at 11:12, Gaetano Checinski <gaetano.checinski at gmail.com> wrote: > Thanks for sharing your insights, > so in theory i could build an llvm pass that calls TargetLowering::LowerToTLSEmulatedModel for each llvm::Function and it should work if i link a runtime that provides __emultls_get_address. I'm afraid not, that function is called as part of converting from a Function to a MachineFunction. It operates on a completely different representation to normal LLVM IR. The only way to trigger it is to set the right field in the TargetOptions. > >It's a missing feature/bug in th...
2017 Feb 09
1
[cfe-dev] lli: LLVM ERROR: Cannot select: X86ISD::WrapperRIP TargetGlobalTLSAddress:i64
...aetano Checinski > <gaetano.checinski at gmail.com> wrote: > > Thanks for sharing your insights, > > so in theory i could build an llvm pass that calls TargetLowering::LowerToTLSEmulatedModel > for each llvm::Function and it should work if i link a runtime that > provides __emultls_get_address. > > I'm afraid not, that function is called as part of converting from a > Function to a MachineFunction. It operates on a completely different > representation to normal LLVM IR. The only way to trigger it is to set > the right field in the TargetOptions. > > > >It&...
2018 Apr 22
0
[cfe-dev] lli: LLVM ERROR: Cannot select: X86ISD::WrapperRIP TargetGlobalTLSAddress:i64
...;> <gaetano.checinski at gmail.com> wrote: >> > Thanks for sharing your insights, >> > so in theory i could build an llvm pass that calls >> TargetLowering::LowerToTLSEmulatedModel for each llvm::Function and it >> should work if i link a runtime that provides __emultls_get_address. >> >> I'm afraid not, that function is called as part of converting from a >> Function to a MachineFunction. It operates on a completely different >> representation to normal LLVM IR. The only way to trigger it is to set >> the right field in the TargetOptions. &g...