aboutsummaryrefslogtreecommitdiff
path: root/libcpp/files.c
diff options
context:
space:
mode:
authorVineet Gupta <vgupta@synopsys.com>2019-04-03 09:53:03 +0000
committerClaudiu Zissulescu <claziss@gcc.gnu.org>2019-04-03 11:53:03 +0200
commit67a9a71183b2f51c1c96fbc5523504eb5834e44f (patch)
tree4ab102127d34b43ad487123d3ba7036be496aa83 /libcpp/files.c
parent59e36c85e7e627feb458f2b8c43859d9422f1522 (diff)
downloadgcc-67a9a71183b2f51c1c96fbc5523504eb5834e44f.zip
gcc-67a9a71183b2f51c1c96fbc5523504eb5834e44f.tar.gz
gcc-67a9a71183b2f51c1c96fbc5523504eb5834e44f.tar.bz2
[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 <vgupta@synopsys.com> PR 89877 * longlong.h [__arc__] (add_ssaaaa): Add cc clobber (sub_ddmmss): Likewise. Signed-off-by: Claudiu Zissulescu <claziss@gmail.com> From-SVN: r270118
Diffstat (limited to 'libcpp/files.c')
0 files changed, 0 insertions, 0 deletions