This is the mail archive of the gcc-patches@gcc.gnu.org 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]

PATH: Add type to UNITS_PER_SIMD_WORD


On Mon, May 19, 2008 at 5:13 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Mon, May 19, 2008 at 4:07 PM, Meissner, Michael
> <michael.meissner@amd.com> wrote:
>> Rather than this patch, I'm curious why you didn't just change
>> UNITS_PER_SIMD_WORD to take a type argument and modify the 9 calls and 5
>> ports that define it?
>
> I have 2 patches. My first patch doesn't change
> UNITS_PER_SIMD_WORD at all. It just removes
> the hardcoded UNITS_PER_SIMD_WORD usage.
> The only one left is in get_vectype_for_scalar_type.
>
>> Alternatively, define a new macro, say
>>
>> #if !defined(UNITS_PER_SIMD_WORD_TYPE) && defined(UNITS_PER_SIMD_WORD)
>> #define UNITS_PER_SIMD_WORD_TYPE(TYPE) UNITS_PER_SIMD_WORD
>> #endif
>>
>> That way you don't have to modify the arm, mips, rs6000, and sparc ports
>> just yet.  However, I suspect like with my SSE5 patches, the better
>> solution is to modify the other backends also.
>>
>
> My second patch will change UNITS_PER_SIMD_WORD.
> Adding UNITS_PER_SIMD_WORD_TYPE means we
> have 2 ways to define the same value. It isn't my preference.
> But I can go either way.

Hi,

This patch adds type to UNITS_PER_SIMD_WORD. It is needed by
AVX:

http://gcc.gnu.org/ml/gcc-patches/2008-05/msg01133.html

OK for trunk after testing on Linux/ia32, Linux/ia64 and Linux/Intel64?

Thanks.

H.J.
---
2008-05-19  H.J. Lu  <hongjiu.lu@intel.com>

        * defaults.h (UNITS_PER_SIMD_WORD): Add type as argument.
        * doc/tm.texi (UNITS_PER_SIMD_WORD): Likewise.

        * tree-vectorizer.c (get_vectype_for_scalar_type): Pass
        scalar_type to UNITS_PER_SIMD_WORD.

        * config/arm/arm.h (UNITS_PER_SIMD_WORD): Updated.
        * config/i386/i386.h (UNITS_PER_SIMD_WORD): Likewise.
        * config/mips/mips.h (UNITS_PER_SIMD_WORD): Likewise.
        * config/rs6000/rs6000.h (UNITS_PER_SIMD_WORD): Likewise.
        * config/sparc/sparc.h (UNITS_PER_SIMD_WORD): Likewise.

Attachment: t.txt
Description: Text document


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