https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89877
--- Comment #2 from claziss at gcc dot gnu.org --- Author: claziss Date: Wed Apr 3 09:53:03 2019 New Revision: 270118 URL: https://gcc.gnu.org/viewcvs?rev=270118&root=gcc&view=rev Log: [ARC]PR 88409: miscompilation due to missing cc clobber in longlong.h macros simple test such as below was failing. | void main(int argc, char *argv[]) | { | size_t total_time = 115424; // expected 115.424 | double secs = (double)total_time/(double)1000; | printf("%s %d %lf\n", "secs", total_time, secs); // prints 113.504 | printf("%d\n", (size_t)secs); | } The printf eventually called into glibc stdlib/divrem.c:__mpn_divrem() which uses the __arc__ specific inline asm macros from longlong.h which were causing miscompilation. include/ 2019-03-28 Vineet Gupta <vgu...@synopsys.com> PR 89877 * longlong.h [__arc__] (add_ssaaaa): Add cc clobber (sub_ddmmss): Likewise. Signed-off-by: Claudiu Zissulescu <claz...@gmail.com> Modified: trunk/include/ChangeLog trunk/include/longlong.h