diff options
author | Geoffrey Keating <geoffk@apple.com> | 2004-01-16 07:07:27 +0000 |
---|---|---|
committer | Geoffrey Keating <geoffk@gcc.gnu.org> | 2004-01-16 07:07:27 +0000 |
commit | b0fadda7ece3959434d698de5800c2ee95c215fd (patch) | |
tree | c566f63f54b609792f564da607f46f66635a0bbe | |
parent | e0a21ab90e2c3f7ceccac31326cb8658c88f41a2 (diff) | |
download | gcc-b0fadda7ece3959434d698de5800c2ee95c215fd.zip gcc-b0fadda7ece3959434d698de5800c2ee95c215fd.tar.gz gcc-b0fadda7ece3959434d698de5800c2ee95c215fd.tar.bz2 |
rs6000.c (rs6000_va_arg): No need to special-case altivec operands.
* config/rs6000/rs6000.c (rs6000_va_arg): No need to special-case
altivec operands.
From-SVN: r75960
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 24 |
2 files changed, 6 insertions, 23 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2384ba9..6cdf24e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-01-15 Geoffrey Keating <geoffk@apple.com> + + * config/rs6000/rs6000.c (rs6000_va_arg): No need to special-case + altivec operands. + 2004-01-15 Kazu Hirata <kazu@cs.umass.edu> * c-common.h: Fix comment formatting. diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index eeabb66..9a399b1 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -4678,29 +4678,7 @@ rs6000_va_arg (tree valist, tree type) return expand_expr (t, NULL_RTX, VOIDmode, EXPAND_NORMAL); } else - { - /* Altivec arguments must be aligned to a 128-bit boundary. */ - if (TARGET_ALTIVEC_ABI && ALTIVEC_VECTOR_MODE (TYPE_MODE (type))) - { - tree vtype = TREE_TYPE (valist); - tree new_valist, modify; - - /* Round address up to multiple of 16. Computes - (addr+15)&~0xf. */ - new_valist = fold (build (BIT_AND_EXPR, vtype, - fold (build (PLUS_EXPR, vtype, valist, - build_int_2 (15, 0))), - build_int_2 (~15, -1))); - - /* Update valist. */ - modify = build (MODIFY_EXPR, TREE_TYPE (valist), valist, - new_valist); - TREE_SIDE_EFFECTS (modify) = 1; - expand_expr (modify, const0_rtx, VOIDmode, EXPAND_NORMAL); - } - - return std_expand_builtin_va_arg (valist, type); - } + return std_expand_builtin_va_arg (valist, type); } f_gpr = TYPE_FIELDS (TREE_TYPE (va_list_type_node)); |