aboutsummaryrefslogtreecommitdiff
path: root/gdb/valops.c
diff options
context:
space:
mode:
authorKen Werner <ken.werner@de.ibm.com>2010-07-14 14:54:58 +0000
committerKen Werner <ken.werner@de.ibm.com>2010-07-14 14:54:58 +0000
commit3cbaedfff7a843d64792766c0322ea3a66ef6cb2 (patch)
tree9dc5bdb9dd1757d262d786b089b6e19d68bfa793 /gdb/valops.c
parentc932f1bef204df484f5dcbc2206ec26f62bcddff (diff)
downloadgdb-3cbaedfff7a843d64792766c0322ea3a66ef6cb2.zip
gdb-3cbaedfff7a843d64792766c0322ea3a66ef6cb2.tar.gz
gdb-3cbaedfff7a843d64792766c0322ea3a66ef6cb2.tar.bz2
gdb/ChangeLog:* valops.c (value_assign): Do not call to value_coerce_to_target.(value_must_coerce_to_target): Return 0 in case of TYPE_VECTOR.gdb/testsuite/ChangeLog:* gdb.arch/altivec-abi.exp: New tests.
Diffstat (limited to 'gdb/valops.c')
-rw-r--r--gdb/valops.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/gdb/valops.c b/gdb/valops.c
index 7fbad10..8150d7e 100644
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -1079,10 +1079,7 @@ value_assign (struct value *toval, struct value *fromval)
type = value_type (toval);
if (VALUE_LVAL (toval) != lval_internalvar)
- {
- toval = value_coerce_to_target (toval);
- fromval = value_cast (type, fromval);
- }
+ fromval = value_cast (type, fromval);
else
{
/* Coerce arrays and functions to pointers, except for arrays
@@ -1427,6 +1424,7 @@ value_must_coerce_to_target (struct value *val)
switch (TYPE_CODE (valtype))
{
case TYPE_CODE_ARRAY:
+ return TYPE_VECTOR (valtype) ? 0 : 1;
case TYPE_CODE_STRING:
return 1;
default: