This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: Relax AltiVec integral parameter/literal type checking

Of course, a ChangeLog would be nice :-)

2004-05-11  Ziemowit Laski  <>

* config/rs6000/altivec.h (vec_ctf, vec_vcfsx, vec_vcfux, vec_cts,
vec_ctu, vec_dss, vec_dst, vec_dstst, vec_dststt, vec_dstt, vec_ld,
vec_ldl, vec_lvsl, vec_lvsr, vec_sld, vec_splat, vec_vspltw,
vec_vsplth, vec_vspltb, vec_splat_s8, vec_splat_s16, vec_splat_s32,
vec_splat_u8, vec_splat_u16, vec_splat_u32, vec_st, vec_stl,
vec_ste): Remove type checks for integral parameters and literals
from '..._args_eq' macros.

2004-05-11  Ziemowit Laski  <>

* gcc.dg/altivec-14.c: New test case.

On 11 May, 2004, at 16.45, Ziemowit Laski wrote:

Continuing on my path to redemption...

This builds on Janis' discovery that AltiVec is now too strict (in the C
case, anyway) about requiring integral type parameters to have exactly
type 'int', which the AltiVec standard does not require; similar for
literal arguments. The solution is to _remove_ the type checks for
these integral parameters/literals, esp. since they don't add any
value in the overload resolution we're implementing.

As you can see, this simplifies the C portion of altivec.h quite bit;
for intrinsics that accept only integral parameters, the ..._args_eq
tests have been removed completely.

OK to commit if there are no regressions (tests presently running)?
Ziemowit Laski                 1 Infinite Loop, MS 301-2K
Mac OS X Compiler Group        Cupertino, CA USA  95014-2083
Apple Computer, Inc.           +1.408.974.6229  Fax .5477

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]