This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH 3/3 V2][rs6000] vector conversion RTL pattern update for diff unit size
- From: "Kewen.Lin" <linkw at linux dot ibm dot com>
- To: Segher Boessenkool <segher at kernel dot crashing dot org>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Bill Schmidt <wschmidt at linux dot ibm dot com>
- Date: Fri, 1 Nov 2019 10:21:24 +0800
- Subject: Re: [PATCH 3/3 V2][rs6000] vector conversion RTL pattern update for diff unit size
- References: <172addbc-3aae-084b-cce4-b9c8a194821d@linux.ibm.com> <22fd6de1-dc31-a977-a803-0a2cb3f11444@linux.ibm.com> <20191030184929.GM28442@gate.crashing.org> <c8e8f628-2c21-34e3-101d-56677fc31467@linux.ibm.com> <20191031184859.GX28442@gate.crashing.org>
Hi Segher,
on 2019/11/1 上午2:49, Segher Boessenkool wrote:
> Hi!
>
> On Thu, Oct 31, 2019 at 05:35:22PM +0800, Kewen.Lin wrote:
>>>> +/* Half VMX/VSX vector (for select) */
>>>> +VECTOR_MODE (FLOAT, SF, 2); /* V2SF */
>>>> +VECTOR_MODE (INT, SI, 2); /* V2SI */
>>>
>>> Or "for internal use", in general. What happens if a user tries to create
>>> something of such a mode? I hope we don't ICE :-/
>>
>> I did some testings, it failed (ICE) if we constructed one insn with these
>> modes artificially. But I also checked the existing V8SF/V8SI/V4DF/... etc.,
>> they have same issues. It looks more like a new issue to avoid that.
>
> What does "artificially" mean? If you had to change the compiler for your
> test, that doesn't count; otherwise, please file a PR.
>
Yes, I hacked the compiler to emit it directly. OK, it's fine then. :)
>> * config/rs6000/vsx.md (UNSPEC_VSX_CVSPSXDS, UNSPEC_VSX_CVSPUXDS): Remove.
>
> (line too long)
Will fix it.
>
> Okay for trunk. Thanks!
>
Thanks for your time!
BR,
Kewen