summaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-19 10:06:56 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-19 10:06:56 +0000
commitcd5ad70a2a1af200e0087490d30a857a2fa24a36 (patch)
tree3ed0952d030d6517f61cb3fc788efa74c943489b /gcc/ChangeLog
parente1604eeae14621984aef6b2ac68059676b37be14 (diff)
downloadgcc-cd5ad70a2a1af200e0087490d30a857a2fa24a36.tar.gz
Remove undefined behaviour from builtins-20.c
builtins-20.c had: if (cos((y*=2, -fabs(tan(x/-y)))) != cos((y*=2,tan(x/y)))) link_error (); which is undefined behaviour. The test expected that y had the same value in x/y and x/-y, but gimplification actually implements the "obvious" interpretation, multiplying y by 2, using it for one cos call, then multiplying it by 2 again and using it for the other cos call. The file has other (valid) tests that side-effects don't block optimisation, such as: if (cosf((y*=3, -x)) != cosf((y*=3,x))) link_error (); so this patch simply removes this instance. Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi. gcc/testsuite/ * gcc.dg/builtins-20.c: Remove undefined behavior. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@228963 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ChangeLog')
0 files changed, 0 insertions, 0 deletions