Description
Environment:
- Redhat Enterprise Server Linux Server release 7.6
- G++: 6.3.1 20170216 (Redhat 6.3.1-3)
- LLVM 9.0
I'm getting an "bad fde: FDE is really a CIE" warning when making calls to extern "C" functions in GCC 6.3.1. I can make the issue go away if I mark the external function with NoUnwind, however, I don't think this is the correct solution as the function may throw.
Taking a wild guess I tried setting the personality of the external function to __gxx_personality_v0 however this then fails validation as external functions cannot be given a personality.
I'm using LLVM 9.0 as a JIT, I'm using the ORC2 API, however, the issue is also demonstrable using the Kaleidascope JIT here: https://llvm.org/docs/tutorial/index.html The error is raised from the DwarfParser.hpp at the point the generated function is resolved (jitted)
Is there a correct way to deal with this, is it something I need to even worry about?