Displaying 20 results from an estimated 100 matches similar to: "no-frame-pointer-elim & optimized"
2017 Apr 26
2
no-frame-pointer-elim & optimized
On 2017-04-26 19:56, Eric Christopher wrote:
> That's really weird. I'm quite surprised that the entry block was moved
> so much later in the function but haven't had a chance to look more at
> it. Probably want to take a look and find out where that's happening and
> why.
From irc, thegameg helped me find the -enable-shrink-wrap=false, which
"fixes" this,
2016 Oct 19
2
Assertion fail/crash in X86FrameLowering::GetFrameIndexReference SEH
I think r262546 introduced the assumption that allocas are used exactly
once with catchpad. It seems easy to fix, though.
On Mon, Oct 17, 2016 at 11:51 PM, Carlo Kok via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> This turned out to be related to reusing the local used in the catchpad,
> for example given the following c++ code:
>
> extern void rthrow();
>
> int
2017 Feb 21
3
[lld] elf linker creates undefined empty symbol
Hi,
When running my own lld generated library/executable I'm getting:
LD_LIBRARY_PATH=. ./ConsoleApplication347
./ConsoleApplication347: symbol lookup error: ./ConsoleApplication347:
undefined symbol:
(theres nothing after undefined symbol)
How can I figure out what's I'm doing wrong?
Full log:
https://gist.github.com/carlokok/1dd510a16e1922271b520f1c00b14656
readelf -s for
2016 Oct 17
2
Assertion fail/crash in X86FrameLowering::GetFrameIndexReference SEH
Hi,
I'm gettign an assertion fail/crash in
X86FrameLowering::GetFrameIndexReference when compiling the following
bitcode:
https://gist.github.com/carlokok/868cddebeb9acc8ccbac6253de0480b0
I tried removing the llvm.frameaddres calls but that's not it, where can
I start looking for what my mistake here is? Code seems to verify just fine.
; #0 0x00e1afe8
2017 Sep 18
5
Interleaved debug info on arm
When compiling code with lld -O0 --lto-O0 --eh-frame-hdr I get strange interleaved line info all
over the place:
...
0x00000000000595ac 22 11 1 0 0 is_stmt
0x00000000000595bc 25 7 1 0 0 is_stmt <<<
0x00000000000595c0 22 11 1 0 0 is_stmt
0x00000000000595c4 25 7 1 0 0 is_stmt <<<
0x00000000000595c8 26 7 1 0 0 is_stmt
but the code only has 1 reference to line 25 and the
2019 May 08
2
taskpool exhaustion in lld/wasm
On a 12" MacBook (2017) with 2 cores I get lld/wasm to be stuck in:
https://gist.githubusercontent.com/carlokok/1a14e7ed3dbbd54511e1f0b3a7d684ff/raw/19267560b584ca42cc66f44f508df5b34102d803/thread%2520for%2520waiting
It seems the outer for loop exhausts the thread pool, and the inner ones trigger a new parallel for which never finishes because the pool is full. Is this a bug or am I
2018 Apr 03
2
llvm.localsescape/recover
I 'm using locals recover to have a seh finally in a separate function:
%1 = alloca i8*, align 4
store i8* %0, i8** %1
%2 = alloca i32
store i32 0, i32* %2
call void (...) @llvm.localescape(i8** %1, i32* %2)
call my finaly like:
%loctmp = call i8* @llvm.localaddress()
call void @"TEST$Fin0"(i8 0, i8* %loctmp)
and recover it with:
%2 = call i8* @llvm.localrecover(i8*
2019 May 08
2
taskpool exhaustion in lld/wasm
It's a wasm testcase that ends up with a 1 mb executable; after 15 minutes I killed it, it doesn't do anything (note that it's waiting on a conditional variable in ALL threads)
On Wed, May 8, 2019, at 14:32, Brian Cain wrote:
> Are you sure it's not just taking "a long time"? If that build machine doesn't have enormous amounts of memory you could end up with a
2018 Mar 14
3
lld/lto/win32 crash on DIE code
I have a fairly recent LLD/LTO llvm crashing on
DIE *ContextDIE = getOrCreateContextDIE(Context)
being null for a (local) variable. (Context is a DICompileUnit in this
case, but it's not present in MDNodeToDieMap so it returns null.
callstack is:
llc.exe!llvm::DwarfUnit::getOrCreateTypeDIE(const llvm::MDNode * TyNode)
Line 718 C++
llvm::DwarfUnit::addType(llvm::DIE & Entity, const
2018 Jan 11
3
wasm: Bad codegen for i8 comparison
(Currently using a build from november but I didn't see any commit that
could fix this for wasm); With the wasm backend,
%2 = icmp sgt i8 %0, -1
becomes:
i32.const $4=, 255
i32.const $2=, 255
i32.and $3=, $0, $2
i32.const $5=, 255
i32.and $6=, $4, $5
i32.gt_s $7=, $3, $6
Which essentially does
2016 Dec 22
2
debug info "ref" parameter
On 2016-12-22 19:02, David Blaikie wrote:
> if you could simplify it down a bit, that might be helpful - not sure
> there's a lot to be gained - I imagine it is just a quirk of how we
> handle these things in the backend to make normal debug info work, but
> there might be some things to be done to help.
>
That's my guess too, special behavior when it sees an alloca.
2018 Apr 03
0
llvm.localsescape/recover
I would guess that %threedoubles has a large alignment and that is making
things go wrong. I thought we fixed this bug, though. I can't find it in
the tracker, but it's in there. Someone used __try with local variables of
type 'double' on 32-bit and things didn't work out. I'm pretty sure we
fixed it though.
On Tue, Apr 3, 2018 at 4:53 AM Carlo Kok via llvm-dev <
2016 Dec 22
0
debug info "ref" parameter
if you could simplify it down a bit, that might be helpful - not sure
there's a lot to be gained - I imagine it is just a quirk of how we handle
these things in the backend to make normal debug info work, but there might
be some things to be done to help.
On Wed, Dec 21, 2016 at 2:31 PM Carlo Kok <ck at remobjects.com> wrote:
>
2016 Dec 22
0
debug info "ref" parameter
I think probably the simplest answer is that dbg.declare documents that it
must point to an alloca ("This intrinsic provides information about a local
element (e.g., variable). The first argument is metadata holding the alloca
for the variable. ") - so it's probably best not to think too hard about
what it does when that criteria is not met.
2016 Dec 21
2
debug info "ref" parameter
https://gist.github.com/carlokok/77010598f81e8167592e593ec6c715a1
If needed I can strip it down more tomorrow, but only elements entry point and the two meh methods are used.
On December 21, 2016 8:27:12 PM GMT+01:00, David Blaikie <dblaikie at gmail.com> wrote:
>Could you provide the complete example (with all the necessary metadata
>to
>reproduce)?
>
>Possible LLVM has a
2018 Mar 16
0
lld/lto/win32 crash on DIE code
Hello Carlo,
I tried your reproducer and faced different problem from one you described
(I'm using MacOS Sierra and lld built from trunk on Mar, 15). The crash happens
when SelectionDAGBuilder::lowerInvokable tries to access EH info of this function:
ms_t26_RemObjects_d_Elements_d_EUnit_d_Runnerb_RunChildrennt2a_RemObjects_d_Elements_d_EUnit_d_RunContext
This happens because LLVM
2016 Dec 21
0
debug info "ref" parameter
Could you provide the complete example (with all the necessary metadata to
reproduce)?
Possible LLVM has a special case for arguments, I'm not sure/don't recall
off hand, but can poke around at it & see if there's a reasonable logic to
it.
On Tue, Dec 20, 2016 at 10:43 PM Carlo Kok via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> I want to emit a ref parameter (ie
2010 Dec 19
0
[LLVMdev] Why google-perftools fails to detect stack of JITted code? (with option -disable-fp-elim set)
I have this problem: google-perftools fails to detect stack for the code
run under JIT called through C++ api from my program. It shows in
profile like all program is one block with the name _init.
I clearly do set the option NoFramePointerElim and I do see how it makes
a difference in stack frame under gdb.
When running some code in JIT in lli (with option -disable-fp-elim)
google perftools
2012 Mar 08
1
[LLVMdev] attribute for disabling fp elim
Hi all,
Is there a way to specify an attribute in a .ll file so that it will
disable fp elim as if llc has been invoked with -disable-fp-elim on command
line ?
Thanks for your answers
Best Regards
Seb
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120308/1d4875f1/attachment.html>
2010 Jun 24
1
[LLVMdev] Why would -disable-fp-elim cause SEGV in JIT, when without it code works fine?
On 06/23/2010 10:24, Reid Kleckner wrote:
> You said this is on 32-bit x86? My understanding is that in that
> case, gdb will use ebp/esp to unwind the stack and doesn't need dwarf.
> It may have different behavior on FreeBSD if frame pointers are
> normally omitted on that platform. gdb ignores them on Linux x86_64
> because they are generally omitted.
>
> This might