From f8202f62ed65d15738e0868005c856168a302696 Mon Sep 17 00:00:00 2001 From: xleroy Date: Wed, 6 Nov 2013 13:51:31 +0000 Subject: - Recognize __builtin_fabs as an operator, not just a builtin, enabling more aggressive optimizations. - Less aggressive CSE for EF_builtin builtins, causes problems for __builtin_write{16,32}_reversed. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2363 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e --- test/regression/Results/builtins-arm | 1 + test/regression/Results/builtins-ia32 | 1 + test/regression/Results/builtins-powerpc | 1 + test/regression/builtins-arm.c | 3 +++ test/regression/builtins-ia32.c | 3 +++ test/regression/builtins-powerpc.c | 3 +++ 6 files changed, 12 insertions(+) (limited to 'test') diff --git a/test/regression/Results/builtins-arm b/test/regression/Results/builtins-arm index 7925545..4db7c32 100644 --- a/test/regression/Results/builtins-arm +++ b/test/regression/Results/builtins-arm @@ -6,3 +6,4 @@ read_16_rev = 3412 read_32_rev = efbeadde after write_16_rev: 9a78 after write_32_rev: 78563412 +CSE write_32_rev: ok diff --git a/test/regression/Results/builtins-ia32 b/test/regression/Results/builtins-ia32 index c16c6ae..5d14a88 100644 --- a/test/regression/Results/builtins-ia32 +++ b/test/regression/Results/builtins-ia32 @@ -7,3 +7,4 @@ read_16_rev = 3412 read_32_rev = efbeadde after write_16_rev: 9a78 after write_32_rev: 78563412 +CSE write_32_rev: ok diff --git a/test/regression/Results/builtins-powerpc b/test/regression/Results/builtins-powerpc index b841dc2..ac4240a 100644 --- a/test/regression/Results/builtins-powerpc +++ b/test/regression/Results/builtins-powerpc @@ -19,3 +19,4 @@ read_16_rev = 3412 read_32_rev = efbeadde after write_16_rev: 9a78 after write_32_rev: 78563412 +CSE write_32_rev: ok diff --git a/test/regression/builtins-arm.c b/test/regression/builtins-arm.c index a80cdcd..5a9cdd0 100644 --- a/test/regression/builtins-arm.c +++ b/test/regression/builtins-arm.c @@ -20,6 +20,9 @@ int main(int argc, char ** argv) printf ("after write_16_rev: %x\n", s); __builtin_write32_reversed(&y, 0x12345678); printf ("after write_32_rev: %x\n", y); + y = 0; + __builtin_write32_reversed(&y, 0x12345678); + printf ("CSE write_32_rev: %s\n", y == 0x78563412 ? "ok" : "ERROR"); return 0; } diff --git a/test/regression/builtins-ia32.c b/test/regression/builtins-ia32.c index 1408444..4ce5488 100644 --- a/test/regression/builtins-ia32.c +++ b/test/regression/builtins-ia32.c @@ -23,6 +23,9 @@ int main(int argc, char ** argv) printf ("after write_16_rev: %x\n", s); __builtin_write32_reversed(&y, 0x12345678); printf ("after write_32_rev: %x\n", y); + y = 0; + __builtin_write32_reversed(&y, 0x12345678); + printf ("CSE write_32_rev: %s\n", y == 0x78563412 ? "ok" : "ERROR"); return 0; } diff --git a/test/regression/builtins-powerpc.c b/test/regression/builtins-powerpc.c index 9f0d410..d8a28ed 100644 --- a/test/regression/builtins-powerpc.c +++ b/test/regression/builtins-powerpc.c @@ -38,6 +38,9 @@ int main(int argc, char ** argv) printf ("after write_16_rev: %x\n", s); __builtin_write32_reversed(&y, 0x12345678); printf ("after write_32_rev: %x\n", y); + y = 0; + __builtin_write32_reversed(&y, 0x12345678); + printf ("CSE write_32_rev: %s\n", y == 0x78563412 ? "ok" : "ERROR"); return 0; } -- cgit v1.2.3