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
This commit is contained in:
parent
2c3babdcb0
commit
1983b3e029
3 changed files with 9 additions and 2 deletions
|
@ -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.
|
||||
|
|
|
@ -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; \
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Add table
Reference in a new issue