diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2011-02-08 13:25:01 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2011-02-08 13:25:01 +0000 |
commit | d6dafb7c8efcd4625de119bffece9907e5b69a8e (patch) | |
tree | 660ab08cd56bbcdf97b1d73108d4d751a9452554 /gdb/testsuite | |
parent | 82f2dbf73d32c8c82e62d2073a99da8b1ec03fa1 (diff) | |
download | gdb-d6dafb7c8efcd4625de119bffece9907e5b69a8e.zip gdb-d6dafb7c8efcd4625de119bffece9907e5b69a8e.tar.gz gdb-d6dafb7c8efcd4625de119bffece9907e5b69a8e.tar.bz2 |
ChangeLog:
* ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Implement
correct ABI for AltiVec vector arguments.
testsuite/ChangeLog:
* gdb.arch/altivec-abi.c (vec_func): Make use of intv_on_stack_f
when computing result.
* gdb.arch/altivec-abi.exp: Update expected results.
Diffstat (limited to 'gdb/testsuite')
-rw-r--r-- | gdb/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/testsuite/gdb.arch/altivec-abi.c | 2 | ||||
-rw-r--r-- | gdb/testsuite/gdb.arch/altivec-abi.exp | 5 |
3 files changed, 10 insertions, 3 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 6314f50..3cb8d41 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2011-02-08 Ulrich Weigand <uweigand@de.ibm.com> + + * gdb.arch/altivec-abi.c (vec_func): Make use of intv_on_stack_f + when computing result. + * gdb.arch/altivec-abi.exp: Update expected results. + 2011-02-07 Thiago Jung Bauermann <bauerman@br.ibm.com> * gdb.base/break-interp.exp: Remove ${objdir} from test messages. diff --git a/gdb/testsuite/gdb.arch/altivec-abi.c b/gdb/testsuite/gdb.arch/altivec-abi.c index f68ec25..61931a0 100644 --- a/gdb/testsuite/gdb.arch/altivec-abi.c +++ b/gdb/testsuite/gdb.arch/altivec-abi.c @@ -71,7 +71,7 @@ vec_func (vector short vshort_f, /* goes in v2 */ vector unsigned char vuchar_res; vint_res = vec_add (vint_f, intv_on_stack_f); - vint_res = vec_add (vint_f, y_f); + vint_res = vec_add (vint_res, y_f); vuint_res = vec_add (vuint_f, ((vector unsigned int) {5,6,7,8})); vshort_res = vec_add (vshort_f, x_f); vushort_res = vec_add (vushort_f, diff --git a/gdb/testsuite/gdb.arch/altivec-abi.exp b/gdb/testsuite/gdb.arch/altivec-abi.exp index 061e477..480af73 100644 --- a/gdb/testsuite/gdb.arch/altivec-abi.exp +++ b/gdb/testsuite/gdb.arch/altivec-abi.exp @@ -91,7 +91,8 @@ proc altivec_abi_tests { extra_flags force_abi } { # the last one will go on the stack. set msg "call inferior function with vectors (1)" gdb_test "p vec_func(vshort,vushort,vint,vuint,vchar,vuchar,vfloat,x,y,a,b,c,intv_on_stack)" \ - ".\[0-9\]+ = .2, 2, 2, 2." "call inferior function with vectors (1)" + ".\[0-9\]+ = .14, 36, 58, 80." "call inferior function with vectors (1)" + # Let's call the function again with dummy arguments. This is to clean # up the contents of the vector registers before the next call. @@ -114,7 +115,7 @@ proc altivec_abi_tests { extra_flags force_abi } { "step into vec_fun" set pattern2 $pattern - append pattern2 " at.*altivec-abi.c.*main.*result = vec_func .vshort,.*goes in v2.*Value returned is.*= .2, 2, 2, 2." + append pattern2 " at.*altivec-abi.c.*main.*result = vec_func .vshort,.*goes in v2.*Value returned is.*= .14, 36, 58, 80." # Let's see if the result is returned correctly. gdb_test "finish" "Run till exit from .0.*$pattern2" \ |