diff options
author | David Malcolm <dmalcolm@redhat.com> | 2018-01-25 00:45:51 +0000 |
---|---|---|
committer | David Malcolm <dmalcolm@gcc.gnu.org> | 2018-01-25 00:45:51 +0000 |
commit | 1983b3e02952a26bf5e319e86bb95667bc420f06 (patch) | |
tree | 5f3c0f0deb1915e08baed7db9b7b067ca46904d8 /gcc | |
parent | 2c3babdcb0de7cb6ea1cba447daece318fc45e79 (diff) | |
download | gcc-1983b3e02952a26bf5e319e86bb95667bc420f06.zip gcc-1983b3e02952a26bf5e319e86bb95667bc420f06.tar.gz gcc-1983b3e02952a26bf5e319e86bb95667bc420f06.tar.bz2 |
Fix jit.dg/test-alignment* (PR jit/82846)
These testcases jit-compile functions that return char, but
were erroneously calling them as if they returned int.
This led to errors for certain target configurations (e.g.
reading from %eax (32-bit) in the harness when only %al (8-bit)
had been written to in the jit-compiled function).
gcc/testsuite/ChangeLog:
PR jit/82846
* jit.dg/test-alignment.c (create_aligned_code): Fix return type
of "fn_type" typedef.
* jit.dg/test-alignment.cc (verify_aligned_code): Likewise.
From-SVN: r257037
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/testsuite/jit.dg/test-alignment.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/jit.dg/test-alignment.cc | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index bdc01f7..72efc3f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2018-01-24 David Malcolm <dmalcolm@redhat.com> + + PR jit/82846 + * jit.dg/test-alignment.c (create_aligned_code): Fix return type + of "fn_type" typedef. + * jit.dg/test-alignment.cc (verify_aligned_code): Likewise. + 2018-01-24 Ian Lance Taylor <iant@golang.org> * go.go-torture/execute/names-1.go: New test. diff --git a/gcc/testsuite/jit.dg/test-alignment.c b/gcc/testsuite/jit.dg/test-alignment.c index 686d981..82328d5 100644 --- a/gcc/testsuite/jit.dg/test-alignment.c +++ b/gcc/testsuite/jit.dg/test-alignment.c @@ -166,7 +166,7 @@ create_aligned_code (gcc_jit_context *ctxt, const char *struct_name, gcc_jit_result *result, \ const char *writer_fn_name) \ { \ - typedef int (*fn_type) (struct TYPENAME *); \ + typedef char (*fn_type) (struct TYPENAME *); \ CHECK_NON_NULL (result); \ \ struct TYPENAME tmp; \ diff --git a/gcc/testsuite/jit.dg/test-alignment.cc b/gcc/testsuite/jit.dg/test-alignment.cc index 3e99209..9a09a41 100644 --- a/gcc/testsuite/jit.dg/test-alignment.cc +++ b/gcc/testsuite/jit.dg/test-alignment.cc @@ -126,7 +126,7 @@ verify_aligned_code (gcc_jit_context *ctxt, gcc_jit_result *result, const char *writer_fn_name) { - typedef int (*fn_type) (T *); + typedef char (*fn_type) (T *); CHECK_NON_NULL (result); T tmp; |