similar to: [LLVMdev] Why isn't __deregister_frame called anywhere in LLVM?

Displaying 20 results from an estimated 800 matches similar to: "[LLVMdev] Why isn't __deregister_frame called anywhere in LLVM?"

2010 Sep 24
0
[LLVMdev] [PATCH] Why isn't __deregister_frame called anywhere in LLVM?
Please check in an attached patch. Synopsys of the change: fixed the cleanup process of exception information in JIT. Now JIT deregisters registered by it FDE structures allowing consecutive JIT runs to succeed. Note: tools like lli should delete ExecutionEngine object and not the module. Module is deleted by ExecutionEngine. Also I am not sure if this is proper for the module to be owned by
2017 Apr 09
2
Possible stack corruption during call to JITSymbol::getAddress()
Firstly, apologies if this is not the right place to be asking this question--feel free to point me in the correct direction. I could be doing something wrong here but stackoverflow didn't feel like the correct place for this since there's so little there about LLVM ORC. Basically, I have a reproduction case (below) where if I throw an exception before I call JITSymbol::getAddress()
2017 Apr 17
2
Possible stack corruption during call to JITSymbol::getAddress()
Hi David, This looks like bad eh-frame data due to a failure to fix up the frame descriptor entries: <debug: adding frame> EHFrameAddr: 0x7feae5827000, EHFrameLoadAddr: 0x00000000e5827000, EHFrameSize: 60 ==64588==ERROR: AddressSanitizer: SEGV on unknown address 0x7feae5827020 (pc 0x7feae886d970 bp 0x000000000001 sp 0x7ffca10e75f8 T0) Eyeballing the code in RuntimeDyldELF (vs
2017 Apr 20
2
Possible stack corruption during call to JITSymbol::getAddress()
Hi David, Thanks very much for that. I'll continue to dig in as time permits, and I'll update the bug report with my progress once it's filed. Cheers, Lang. On Mon, Apr 17, 2017 at 6:42 PM, David Lurton <dlurton at gmail.com> wrote: > Thanks Lang. I think I'll go the bug creation route. I have an email out > to llvm-admin requesting an account on bugs.llvm.org.
2017 May 01
1
Possible stack corruption during call to JITSymbol::getAddress()
Hi David, Sorry to hear. Has anyone followed up with you yet? I've continued to dig in to this in my spare time and I've found the issue. It's a use-after-free, rather than any sort of memory smashing. ORC is currently failing to deregister the EH-frame section when the JIT is torn down (but *is* deallocating the memory for it). Normally that's not disastrous (though it does
2020 Aug 15
5
Supporting libunwind on Windows 10 (32bit; 64bit) for MSVC and Clang
Hello. I was trying to compile https://github.com/llvm/llvm-project/tree/master/libunwind using: - MSVC - Clang I wasn't able to configure this project for using MSVC (directly or via clang-cl): >cmake -G Ninja -DLLVM_PATH="C:/Users/clang/llvm-project-10.0.1/llvm" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="C:\Users\clang\libunwind_llvm" ../libunwind --
2015 Aug 25
4
GPL Software
Le 25/08/2015 20:39, Renato Golin a écrit : > I'm also interested in knowing what you did. I think most people here > would be glad to know your peril and how you solved it. Stack layout: C++ code calls | | JITted C code, compiled and linked on the fly tha calls | | C++ code that throws The throw must pass through the JITted code to arrive at the catch at the top.
2013 Apr 30
1
[LLVMdev] LLVM creates unterminated ELF .eh_frame sections
On 04/30/2013 11:53, Rafael Espíndola wrote: > Are you trying MCJIT?:-) No. > > I first tried to compensate for that in MCJIT by adding those 4 bytes. > That works for Linux, but not for OS X where __register_frame takes a > single FDE at a time. I have an incomplete wip patch if you are > interested. On BSD __register_frame also takes a single argument and therefore needs
2011 Apr 11
0
[LLVMdev] gcroot + `section not found for addresss ...' ???
The linker is going off in the weeds trying to parse the dwarf unwind info. The CIE has: Leh_frame_common_begin0: .long 0 ## CIE Identifier Tag .byte 1 ## DW_CIE_VERSION .asciz "zLR" ## CIE Augmentation .byte 1 ## CIE Code Alignment Factor .byte 120 ## CIE Data Alignment
2013 Apr 27
2
[LLVMdev] LLVM creates unterminated ELF .eh_frame sections
Please look at the fragment of the hex dump of LLVM-created ELF showing the beginning and end of .eh_frame: .eh_frame begin 000297a0 14 00 00 00 00 00 00 00 01 7a 52 00 01 78 10 01 |.........zR..x..| 000297b0 1b 0c 07 08 90 01 00 00 18 00 00 00 1c 00 00 00 |................| <...skipped...> 0002cb00 00 00 00 00 0b 01 00 00 00 41 0e 10 86 02 43 0d |.........A....C.| 0002cb10 06 42
2011 Apr 12
2
[LLVMdev] gcroot + `section not found for addresss ...' ???
This is an interesting problem. The GC code is being converted into 'invokes' instead of calls: define i32 @main() gc "shadow-stack" { entry: %gc_frame = alloca %gc_stackentry.main %gc_currhead = load %gc_stackentry** @llvm_gc_root_chain %gc_frame.map = getelementptr %gc_stackentry.main* %gc_frame, i32 0, i32 0, i32 1 store %gc_map* getelementptr inbounds (%gc_map.0*
2010 Jan 22
0
[LLVMdev] Exception handling question
Hi James, > I've been trying to get a minimal test function to work, which simply > invokes _Unwind_RaiseException with a single clean-up landing pad. > However. when I run it my personality function is not getting called - > _Unwind_RaiseException simply returns apparently doing nothing. Looking > at the x86-64 assembly output from llc, I can see this is happening >
2013 Apr 30
0
[LLVMdev] LLVM creates unterminated ELF .eh_frame sections
> The problem with this is that __register_frame function (in libgcc_s.so), > registering .eh_frame with an exception handler, only takes the pointer to > .eh_frame, and not the size of data, and should be able to detect the end of > data by scanning it and hitting zero DWORD (size). There is no trailing > zero, and it runs into the next section and tries to interpret it as an >
2010 Jan 22
2
[LLVMdev] Exception handling question
2010/1/22 Duncan Sands <baldrick at free.fr> > Hi James, > > > I've been trying to get a minimal test function to work, which simply >> invokes _Unwind_RaiseException with a single clean-up landing pad. However. >> when I run it my personality function is not getting called - >> _Unwind_RaiseException simply returns apparently doing nothing. Looking at
2019 Oct 07
2
[RFC] Propeller: A frame work for Post Link Optimizations
We would also like to clarify on the misconceptions around CFI Instructions: There are two things that need to be clarified here: 1) Extra CFI FDE entries for basic blocks does not mean more dynamic instructions are executed. In fact, they do not increase at all. Krys talked about this earlier. 2) We do deduplication of common static CFI instructions in the FDE and move it to the CIE . Hence,
2019 Oct 16
2
message error NT_STATUS_OBJECT_NAME_NOT_FOUND regulary in the log
Le 16/10/2019 ? 12:07, Rowland penny via samba a ?crit?: > On 16/10/2019 10:59, nathalie ramat wrote: >> ???????????? Checking file: /etc/samba/smb.conf >> >> # Global parameters >> [global] >> ?????? dns forwarder = 192.168.xx.230 > You cannot forward to the DC itself, it needs to be a dns server > outside the AD dns domain. >> ?????? netbios name =
2017 Sep 26
1
Missing dwarf FDE
Hi All, I am trying to emit dwarf debug information for my target. By using objdump or llvm-objdump with `--dwarf=frames`, I can only see CIE (Common Information Entry) but not FDE (Frame Description Entry). Right now, my target LLVM backend only emit assembly, and let binutils do the rest. I don't know where the problem is, is there something wrong in my target LLVM backend or in the
2005 Jan 03
1
[LLVMdev] Problem with LLVM CFE bootstrap at FreeBSD
I can't boostrap LLVM CFE at FreeBSD with current LLVM and LLVM CFE CVS sources. GCC bootstrap terminated with error: /usr/home/wanderer/pkg/build/llvm/objcfe/gcc/xgcc -B/usr/home/wanderer/pkg/build/llvm/objcfe/gcc/ -B/home/wanderer/pkg/build /llvm/night/cfe/i386-unknown-freebsd5.3/bin/ -B/home/wanderer/pkg/build/llvm/night/cfe/i386-unknown-freebsd5.3/lib/ -isystem
2019 Oct 02
4
[RFC] Propeller: A frame work for Post Link Optimizations
I'm a bit confused by this subthread -- doesn't BOLT have the exact same CFI bloat issue? From my cursory reading of the propellor doc, the CFI duplication is _necessary_ to represent discontiguous functions, not anything particular to the way Propellor happens to generate those discontiguous functions. And emitting discontiguous functions is a fundamental goal of this, right? On Wed,
2019 Oct 08
2
[RFC] Propeller: A frame work for Post Link Optimizations
Some more information about the relaxation pass whose effectiveness and convergence guarantees were listed as a concern: TLDR; Our relaxation pass is similar to what LLVM’s MCAssembler does but with a caveat for efficiency. Our experimental results show it is efficient and convergence is guaranteed. Our relaxation pass is very similar to what MCAssembler does as it needs to solve the same