[Bug target/105960] Crash in 32-bit mode
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jun 14 08:30:57 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105960
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target|x86_64 |i?86-*-*
Last reconfirmed| |2022-06-14
Status|UNCONFIRMED |NEW
Ever confirmed|0 |1
CC| |hjl.tools at gmail dot com
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed. Something is wrong with either ld.so or GCC. We end up with
.globl exp_ref
.type exp_ref, @function
exp_ref:
.LFB1:
.cfi_startproc
pushl %ebx
.cfi_def_cfa_offset 8
.cfi_offset 3, -8
popl %ebx
.cfi_restore 3
.cfi_def_cfa_offset 4
jmp expfull_ref@PLT
^^^ this crashes
.type expfull_ref, @gnu_indirect_function
.set expfull_ref,expfull_ref.resolver
.type expfull_ref.resolver, @function
expfull_ref.resolver:
.LFB4:
.cfi_startproc
pushl %ebx
but expfull_ref isn't .globl!?
#define TARGET_CLONES __attribute__((target_clones("default","fma")))
TARGET_CLONES
static inline double
expfull_ref(double x)
{
return __builtin_pow(x, 0.1234);
}
double
exp_ref(double x)
{
return expfull_ref(x);
}
More information about the Gcc-bugs
mailing list