fabs is 0-sized, confuses dis(1) and others
Because of the synonyms use in libm, fabs is defined to be __fabs
We have an asm implementation on i386, which does:
but then needs to use the 'fabs' instruction, so does:
And then when it's done does
It never redefines fabs=__fabs though, so it sets the size of the wrong symbol (the weak one). Leaving the function symbol of incorrectly 0 size.
This confuses dis(1), me, and probably other things and people.
Updated by Electric Monk over 7 years ago
- Status changed from New to Closed
- % Done changed from 90 to 100
commit ddc0e0b53c661f6e439e3b7072b3ef353eadb4af Author: Richard Lowe <email@example.com> Date: 2014-11-26T22:05:43.000Z 5261 libm should stop using synonyms.h 5298 fabs is 0-sized, confuses dis(1) and others Reviewed by: Josef 'Jeff' Sipek <firstname.lastname@example.org> Approved by: Gordon Ross <email@example.com>