[PATCH] rs6000: Fix wrong RTL patterns for vector merge high/low char on LE

2024-06-24 Thread Kewen.Lin
Hi, Commit r12-4496 changes some define_expands and define_insns for vector merge high/low char, which are altivec_vmrg[hl]b. These defines are mainly for built-in function vec_merge{h,l} and some internal gen function needs. These functions should consider endianness, taking vec_mergeh as

Re: [PATCH 10/52] jit: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-24 Thread Kewen.Lin
Hi Dave, May I ask if you still have some concerns on this patch with some replies to your previous questions? BR, Kewen on 2024/6/14 10:16, Kewen.Lin wrote: > Hi David, > > on 2024/6/13 21:44, David Malcolm wrote: >> On Sun, 2024-06-02 at 22:01 -0500, Kewen Lin wrote: >>

[PATCH] rs6000: Fix wrong RTL patterns for vector merge high/low short on LE

2024-06-24 Thread Kewen.Lin
Hi, Commit r12-4496 changes some define_expands and define_insns for vector merge high/low short, which are altivec_vmrg[hl]h. These defines are mainly for built-in function vec_merge{h,l} and some internal gen function needs. These functions should consider endianness, taking vec_mergeh as

Re: [PATCH] rs6000, change altivec*-runnable.c test file names

2024-06-24 Thread Kewen.Lin
Hi, on 2024/6/22 00:15, Carl Love wrote: > GCC maintainers: > > Per the discussion of the dg header changes for test files > altivec-1-runnable.c and altivec-2-runnable.c it was decided it would be best > to change the names of the two tests to better align them with the tests that > they are

Re: [PATCH version 4] rs6000, altivec-2-runnable.c update the, require-effective-target

2024-06-24 Thread Kewen.Lin
Hi Carl, on 2024/6/22 00:15, Carl Love wrote: > GCC maintainers: > > version 4: Additional dg option updates per the feedback. Retested the > patch on Power 10, no regressions. > > version 3: Updated per the feedback from Peter, Kewen and Segher. Note, > Peter suggested the -mdejagnu-cpu=

Re: [PATCH version 2] rs6000, altivec-1-runnable.c update the, require-effective-target

2024-06-23 Thread Kewen.Lin
Hi, on 2024/6/22 00:15, Carl Love wrote: > GCC maintainers: > > version 2, update the dg options per the feedback. Retested the patch on > Power 10 with no regressions. > > This patch updates the dg options. > > The patch has been tested on Power 10 with no regression failures. > > Please

Re: [PATCH-1v3, rs6000] Implement optab_isinf for SFDF and IEEE128

2024-06-21 Thread Kewen.Lin
Hi Haochen, on 2024/5/24 14:02, HAO CHEN GUI wrote: > Hi, > This patch implemented optab_isinf for SFDF and IEEE128 by test > data class instructions. > > Compared with previous version, the main change is to narrow > down the predict for float operand according to review's advice. >

Re: [PATCH] rs6000, altivec-1-runnable.c update the require-effective-target

2024-06-21 Thread Kewen.Lin
Hi Carl, on 2024/6/20 00:18, Carl Love wrote: > GCC maintainers: > > The dg options for this test should be the same as for altivec-2-runnable.c. > This patch updates the dg options to match > the settings in altivec-2-runnable.c. > > The patch has been tested on Power 10 with no regression

Re: [PATCH V5 1/2] split complicate 64bit constant to memory

2024-06-21 Thread Kewen.Lin
Hi Jeff, on 2024/6/13 10:19, Jiufu Guo wrote: > Hi, > > Sometimes, a complicated constant is built via 3(or more) > instructions. Generally speaking, it would not be as fast > as loading it from the constant pool (as the discussions in > PR63281): > "ld" is one instruction. If consider

Re: [PATCH ver2] rs6000, altivec-2-runnable.c update the require-effective-target

2024-06-21 Thread Kewen.Lin
Hi Carl, on 2024/6/20 00:13, Carl Love wrote: > GCC maintainers: > > version 2: Updated per the feedback from Peter, Kewen and Segher. Note, > Peter suggested the -mdejagnu-cpu= value must be power7. > The test fails if -mdejagnu-cpu= is set to power7, needs to be power8. Patch > has been

Re: [PATCH 05/52] rust: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-21 Thread Kewen.Lin
Hi Arthur, on 2024/6/21 18:17, Arthur Cohen wrote: > Hi, > > Sorry about the delay in my answer! The patch looks good to me :) Will you > push it as part of your patchset? > Thanks for the review! Since this one doesn't necessarily depend on "09/52 Replace {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

PING^2 [PATCH 05/52] rust: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-20 Thread Kewen.Lin
Hi! Gentle ping^2: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653339.html BR, Kewen on 2024/6/12 17:35, Kewen.Lin wrote: > Hi, > > Gentle ping: > > https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653339.html > > BR, > Kewen > > on 2024/6/3 11:

Re: [PATCH] rs6000: Fix wrong RTL patterns for vector merge high/low word on LE

2024-06-20 Thread Kewen.Lin
Hi Segher, on 2024/6/21 01:20, Segher Boessenkool wrote: > Hi! > > On Thu, Jun 20, 2024 at 06:22:07PM +0800, Kewen.Lin wrote: >> Following your review comments in [1], this patch is >> separated from Xionghu's patch v4 [2] and mainly targetted >> for 32-b

[PATCH] rs6000: Fix wrong RTL patterns for vector merge high/low word on LE

2024-06-20 Thread Kewen.Lin
Hi Segher, Following your review comments in [1], this patch is separated from Xionghu's patch v4 [2] and mainly targetted for 32-bit element size, it changes with the generic call altivec_vmrg*w in vec_widen_[su]mult_{hi,lo}* expanders as well. If this patch looks good to you, I'll post the

Re: [PATCH v4] rs6000: Fix incorrect RTL for Power LE when removing the UNSPECS [PR106069]

2024-06-19 Thread Kewen.Lin
Hi Segher, on 2024/6/19 04:31, Segher Boessenkool wrote: > On Fri, Feb 10, 2023 at 10:59:52AM +0800, Xionghu Luo via Gcc-patches wrote: > So, nothing here is obvious at all still. Could you please split it up > a bit more, so that every step is either small or simple? I just chatted with

Re: [PATCH v4] rs6000: Fix incorrect RTL for Power LE when removing the UNSPECS [PR106069]

2024-06-19 Thread Kewen.Lin
on 2024/6/19 03:02, Peter Bergner wrote: > On 6/12/24 2:50 AM, Kewen.Lin wrote: >> As the recent PR115355 shows, this issue can also affect the >> behavior when users are adopting vectorization optimization, >> IMHO we should get this landed as soon as possible. > >

Re: [PATCH] rs6000, altivec-2-runnable.c update the require-effective-target

2024-06-18 Thread Kewen.Lin
Hi Carl, >> I'd expect the "-runnable" test case focuses on testing for run. Normally, >> the one without "-runnable" would focus on testing for compiling (scan some >> desired insn), but this altivec-1.c and altivec-1-runnable.c seems to test >> for different things, maybe we should separate

Re: [PATCH 13/13 ver4] rs6000, remove vector set and vector init built-ins

2024-06-18 Thread Kewen.Lin
Hi Carl, on 2024/6/14 03:40, Carl Love wrote: > GCC maintainers: > > The patch has been updated per the feedback from version 3. Please let me > know it the patch is acceptable for mainline. > > Thanks. > > Carl > >

Re: [PATCH 11/13 ver4] rs6000, extend vec_xxpermdi built-in for __int128 args

2024-06-18 Thread Kewen.Lin
Hi Carl, on 2024/6/14 03:40, Carl Love wrote: > > GCC maintainers: > > The patch has been updated per the comments from version 3. Please let me > know if the patch is acceptable for mainline. > > Thanks. > > Carl > >

Re: [PATCH 7/13 ver4] rs6000, add overloaded vec_sel with int128 arguments

2024-06-18 Thread Kewen.Lin
Hi Carl, on 2024/6/14 03:40, Carl Love wrote: > > GCC maintainers: > > The patch has been updated per the comments from version 3. Please let me > know if the patch is acceptable for mainline. > > Carl > >

Re: [PATCH 4/13 ver4] rs6000, extend the current vec_{un,}signed{e,o}, built-ins

2024-06-18 Thread Kewen.Lin
Hi Carl, on 2024/6/14 03:40, Carl Love wrote: > > GCC maintainers: > > As noted the removal of __builtin_vsx_xvcvdpuxds_uns and > __builtin_vsx_xvcvspuxws was moved to patch 2 in the seris. The patch has > been updated per the comments from version 3. > > Please let me know if this patch is

Re: [PATCH 2/13 ver4] rs6000, Remove __builtin_vsx_xvcvspsxws,, __builtin_vsx_xvcvdpuxds_uns, __builtin_vsx_xvcvspuxws built-ins.

2024-06-18 Thread Kewen.Lin
Hi Carl, on 2024/6/14 03:40, Carl Love wrote: > GCC maintainers: > > Per the comments on patch 0004 from version 3, the removal of > The built-in __builtin_vsx_xvcvdpuxds_uns and __builtin_vsx_xvcvspuxws was > moved to this patch. The rest of the patch is unchanged from version 3. > There

Re: [PATCH] rs6000, altivec-2-runnable.c update the require-effective-target

2024-06-17 Thread Kewen.Lin
Hi, on 2024/6/18 00:08, Peter Bergner wrote: > On 6/14/24 1:37 PM, Carl Love wrote: >> Per the additional feedback after patch: >> >> commit c892525813c94b018464d5a4edc17f79186606b7 >> Author: Carl Love >> Date: Tue Jun 11 14:01:16 2024 -0400 >> >> rs6000, altivec-2-runnable.c

Re: [Patch-2v3, rs6000] Eliminate unnecessary byte swaps for duplicated constant vector store [PR113325]

2024-06-17 Thread Kewen.Lin
Hi Haochen, on 2024/6/17 16:59, HAO CHEN GUI wrote: > Hi, > This patch creates an insn_and_split pattern which helps the duplicated > constant vector replace the source pseudo of store insn in fwprop pass. > Thus the store can be implemented by a single stxvd2x and it eliminates the >

Re: [PATCH] rs6000: Compute rop_hash_save_offset for non-Altivec compiles [PR115389]

2024-06-17 Thread Kewen.Lin
on 2024/6/17 20:57, Peter Bergner wrote: > On 6/16/24 9:40 PM, Kewen.Lin wrote: >> on 2024/6/17 10:31, Peter Bergner wrote: >>> On 6/16/24 9:10 PM, Kewen.Lin wrote: >>>> on 2024/6/15 01:05, Peter Bergner wrote: >>>>> That said, the --with-c

Re: [PATCH] middle-end/114189 - drop uses of vcond{,u,eq}_optab

2024-06-17 Thread Kewen.Lin
Hi Richi, on 2024/6/14 18:31, Richard Biener wrote: > The following retires vcond{,u,eq} optabs by stopping to use them > from the middle-end. Targets instead (should) implement vcond_mask > and vec_cmp{,u,eq} optabs. The PR this change refers to lists > possibly affected targets - those

Re: [PATCH 30/52 v2] pdp11: Remove macro {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-17 Thread Kewen.Lin
t. BR, Kewen > > paul > >> On Jun 13, 2024, at 11:22 PM, Kewen.Lin wrote: >> >> Hi Paul, >> >> on 2024/6/14 04:07, Paul Koning wrote: >>> What is the effect of this change? The original code intended to have >>> "float&

Re: [PATCH] rs6000: Compute rop_hash_save_offset for non-Altivec compiles [PR115389]

2024-06-17 Thread Kewen.Lin
on 2024/6/15 01:05, Peter Bergner wrote: > On 6/13/24 10:26 PM, Peter Bergner wrote: >> On 6/13/24 9:26 PM, Kewen.Lin wrote: >>>>> I understand this is just copied from the if arm, but if I read this >>>>> right, it can be >>>>> simplified

Re: [PATCH] rs6000: Compute rop_hash_save_offset for non-Altivec compiles [PR115389]

2024-06-17 Thread Kewen.Lin
on 2024/6/17 10:31, Peter Bergner wrote: > On 6/16/24 9:10 PM, Kewen.Lin wrote: >> on 2024/6/15 01:05, Peter Bergner wrote: >>> That said, the --with-cpu=power5 build without fortran did bootstrap and >>> regtest with no regressions, so the build did test that code path

Re: [PATCH] middle-end/114189 - drop uses of vcond{,u,eq}_optab

2024-06-17 Thread Kewen.Lin
on 2024/6/17 14:16, Richard Biener wrote: > On Mon, 17 Jun 2024, Kewen.Lin wrote: > >> Hi Richi, >> >> on 2024/6/14 18:31, Richard Biener wrote: >>> The following retires vcond{,u,eq} optabs by stopping to use them >>> from the middle-end. Tar

Re: [PATCH 06/52] m2: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-17 Thread Kewen.Lin
on 2024/6/15 13:00, Gaius Mulley wrote: > "Kewen.Lin" writes: > >> Hi Gaius, >> >>>> static tree >>>> build_m2_short_real_node (void) >>>> { >>>> - tree c; >>>> - >>>> - /* Defin

Re: [PATCH] rs6000, altivec-2-runnable.c should be a runnable test

2024-06-14 Thread Kewen.Lin
Hi! on 2024/6/14 05:16, Carl Love wrote: > Segher: > > On 6/13/24 12:51, Segher Boessenkool wrote: > > > >> >>> --- a/gcc/testsuite/gcc.target/powerpc/altivec-2-runnable.c >>> +++ b/gcc/testsuite/gcc.target/powerpc/altivec-2-runnable.c >>> @@ -1,4 +1,4 @@ >>> -/* { dg-do compile { target

Re: [PATCH] rs6000, altivec-2-runnable.c should be a runnable test

2024-06-13 Thread Kewen.Lin
Hi, on 2024/6/14 11:58, Peter Bergner wrote: > On 6/13/24 9:34 PM, Kewen.Lin wrote: >> on 2024/6/14 05:16, Carl Love wrote: > >>> /* { dg-options "-mvsx" } */ >>> /* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! >>&

[PATCH 30/52 v2] pdp11: Remove macro {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi Paul, on 2024/6/14 04:07, Paul Koning wrote: > What is the effect of this change? The original code intended to have > "float" mean a 32 bit value, and "double" a 64 bit value. There aren't any > larger floats, so I defined the long double size as 64 also. Is the right > answer not to

Re: [PATCH] rs6000: Compute rop_hash_save_offset for non-Altivec compiles [PR115389]

2024-06-13 Thread Kewen.Lin
on 2024/6/13 21:24, Peter Bergner wrote: > On 6/13/24 12:35 AM, Kewen.Lin wrote: >>> @@ -826,7 +826,14 @@ rs6000_stack_info (void) >>> info->ehrd_offset -= info->rop_hash_size; >>> } >>>else >>> - info->ehrd_offset = i

Re: [PATCH 10/52] jit: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi David, on 2024/6/13 21:44, David Malcolm wrote: > On Sun, 2024-06-02 at 22:01 -0500, Kewen Lin wrote: >> Joseph pointed out "floating types should have their mode, >> not a poorly defined precision value" in the discussion[1], >> as he and Richi suggested, the existing macros >>

PING^1 [PATCH 46/52] h8300: New hook implementation h8300_c_mode_for_floating_type

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653379.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to add new port specific hook implementation > h8300_c_mode_for_floating_type, remove useless macro > defines for {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE and add >

PING^1 [PATCH 38/52] avr: New hook implementation avr_c_mode_for_floating_type

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653375.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in avr port, and add new port specific hook > implementation avr_c_mode_for_floating_type. > >

PING^1 [PATCH 37/52] alpha: New hook implementation alpha_c_mode_for_floating_type

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653370.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in alpha port, and add new port specific hook > implementation alpha_c_mode_for_floating_type. >

PING^1 [PATCH 42/52] rl78: New hook implementation rl78_c_mode_for_floating_type

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653376.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in rl78 port, and add new port specific hook > implementation rl78_c_mode_for_floating_type. > >

PING^1 [PATCH 52/52] bfin: Rename macros {FLOAT,DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653386.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This patch is to remove LONG_DOUBLE_TYPE_SIZE and > rename macros {FLOAT,DOUBLE}_TYPE_SIZE with prefix > BFIN_ as some macro defines want to use them, keeping > them

PING^1 [PATCH 48/52] m68k: New hook implementation m68k_c_mode_for_floating_type

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653381.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to add new port specific hook implementation > m68k_c_mode_for_floating_type, remove macro > LONG_DOUBLE_TYPE_SIZE and add new macro > LONG_DOUBLE_TYPE_MODE

PING^1 [PATCH 44/52] s390: New hook implementation s390_c_mode_for_floating_type

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653382.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in s390 port, and add new port specific hook > implementation s390_c_mode_for_floating_type. > >

PING^1 [PATCH 40/52] ia64: New hook implementation ia64_c_mode_for_floating_type

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653374.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in ia64 port, and add new port specific hook > implementation ia64_c_mode_for_floating_type. > >

PING^1 [PATCH 24/52] moxie: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653360.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in moxie port. > > gcc/ChangeLog: > > * config/moxie/moxie.h (FLOAT_TYPE_SIZE): Remove. >

PING^1 [PATCH 29/52] or1k: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653363.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in or1k port. > > gcc/ChangeLog: > > * config/or1k/or1k.h (FLOAT_TYPE_SIZE): Remove. >

PING^1 [PATCH 28/52] nvptx: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653361.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in nvptx port. > > gcc/ChangeLog: > > * config/nvptx/nvptx.h (FLOAT_TYPE_SIZE): Remove. >

PING^1 [PATCH 16/52] ft32: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653350.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in ft32 port. > > gcc/ChangeLog: > > * config/ft32/ft32.h (FLOAT_TYPE_SIZE): Remove. >

PING^1 [PATCH 30/52] pdp11: Remove macro LONG_DOUBLE_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653368.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macro LONG_DOUBLE_TYPE_SIZE define > in pdp11 port. > > gcc/ChangeLog: > > * config/pdp11/pdp11.h (LONG_DOUBLE_TYPE_SIZE): Remove. > --- >

PING^1 [PATCH 11/52] arc: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653345.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in arc port. > > gcc/ChangeLog: > > * config/arc/arc.h (FLOAT_TYPE_SIZE): Remove. >

PING^1 [PATCH 26/52] nds32: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653358.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in nds32 port. > > gcc/ChangeLog: > > * config/nds32/nds32.h (FLOAT_TYPE_SIZE): Remove. >

PING^1 [PATCH 33/52] visium: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653365.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in visium port. > > gcc/ChangeLog: > > * config/visium/visium.h (FLOAT_TYPE_SIZE):

PING^1 [PATCH 22/52] microblaze: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653355.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in microblaze port. > > gcc/ChangeLog: > > * config/microblaze/microblaze.h

PING^1 [PATCH 19/52] lm32: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653354.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in lm32 port. > > gcc/ChangeLog: > > * config/lm32/lm32.h (FLOAT_TYPE_SIZE): Remove. >

PING^1 [PATCH 13/52] epiphany: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653344.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in epiphany port. > > gcc/ChangeLog: > > * config/epiphany/epiphany.h (FLOAT_TYPE_SIZE):

PING^1 [PATCH 12/52] bpf: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653343.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE > defines in bpf port. > > gcc/ChangeLog: > > * config/bpf/bpf.h (FLOAT_TYPE_SIZE): Remove. >

PING^1 [PATCH 10/52] jit: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-13 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653346.html BR, Kewen on 2024/6/3 11:01, Kewen Lin wrote: > Joseph pointed out "floating types should have their mode, > not a poorly defined precision value" in the discussion[1], > as he and Richi suggested, the existing

Re: [PATCH 3/3] Add power11 tests

2024-06-12 Thread Kewen.Lin
Hi, on 2024/6/13 02:56, Michael Meissner wrote: > On Wed, Jun 12, 2024 at 02:23:18PM +0800, Kewen.Lin wrote: >> Hi Mike, >> >>> +# Return 1 if this is a PowerPC target supporting -mcpu=power11. >>> + >>> +proc check_effective_target_power11

Re: [PATCH] rs6000: Compute rop_hash_save_offset for non-Altivec compiles [PR115389]

2024-06-12 Thread Kewen.Lin
Hi Peter, on 2024/6/8 12:06, Peter Bergner wrote: > We currently only compute the offset for the ROP hash save location in > the stack frame for Altivec compiles. For non-Altivec compiles when we > emit ROP mitigation instructions, we use a default offset of zero which > corresponds to the

PING^1 [PATCH 08/52] vms: Replace use of LONG_DOUBLE_TYPE_SIZE

2024-06-12 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653342.html BR, Kewen on 2024/6/3 11:00, Kewen Lin wrote: > Joseph pointed out "floating types should have their mode, > not a poorly defined precision value" in the discussion[1], > as he and Richi suggested, the existing

PING^1 [PATCH 05/52] rust: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-12 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653339.html BR, Kewen on 2024/6/3 11:00, Kewen Lin wrote: > Joseph pointed out "floating types should have their mode, > not a poorly defined precision value" in the discussion[1], > as he and Richi suggested, the existing

Re: [PATCH 04/52] go: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-12 Thread Kewen.Lin
Hi, Gentle ping: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653387.html BR, Kewen on 2024/6/3 11:00, Kewen Lin wrote: > Joseph pointed out "floating types should have their mode, > not a poorly defined precision value" in the discussion[1], > as he and Richi suggested, the existing

Re: [PATCH 06/52] m2: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-12 Thread Kewen.Lin
Hi Gaius, >> static tree >> build_m2_short_real_node (void) >> { >> - tree c; >> - >> - /* Define `REAL'. */ >> - >> - c = make_node (REAL_TYPE); >> - TYPE_PRECISION (c) = FLOAT_TYPE_SIZE; >> - layout_type (c); >> - return c; >> + /* Define `SHORTREAL'. */ >> + layout_type

Re: [PATCH v4] rs6000: Fix incorrect RTL for Power LE when removing the UNSPECS [PR106069]

2024-06-12 Thread Kewen.Lin
Hi, on 2023/2/10 10:59, Xionghu Luo wrote: > Resend this patch... > > v4: Update per comments. > v3: rename altivec_vmrghb_direct_le to altivec_vmrglb_direct_le to match > the actual output ASM vmrglb. Likewise for all similar xxx_direct_le > patterns. > v2: Split the direct pattern to be and le

Re: [PATCH 3/3] Add power11 tests

2024-06-12 Thread Kewen.Lin
Hi Mike, on 2024/6/4 09:46, Michael Meissner wrote: > This patch adds some simple tests for -mcpu=power11 support. In order to run > these tests, you need an assembler that supports the appropriate option for > supporting the Power11 processor (-mpower11 under Linux or -mpwr11 under AIX). > > I

Re: [Patch-2v2, rs6000] Eliminate unnecessary byte swaps for duplicated constant vector store [PR113325]

2024-06-12 Thread Kewen.Lin
Hi Haochen, on 2024/6/12 10:47, HAO CHEN GUI wrote: > Hi, > This patch creates an insn_and_split pattern which helps the duplicated > constant vector replace the source pseudo of store insn in fwprop pass. > Thus the store can be implemented by a single stxvd2x and it eliminates the >

Re: [PATCH 06/52] m2: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-05 Thread Kewen.Lin
Hi Gaius, on 2024/6/5 22:22, Gaius Mulley wrote: > "Kewen.Lin" writes: > >> Hi Joseph and Gaius, >> >> on 2024/6/4 02:02, Joseph Myers wrote: >>> On Sun, 2 Jun 2024, Kewen Lin wrote: >>> >>>> diff --git a/gcc/m2/gm2-gcc/m2type.c

Re: [PATCH 1/13 ver 3] rs6000, Remove __builtin_vsx_cmple* builtins

2024-06-05 Thread Kewen.Lin
Hi Carl, on 2024/6/6 06:25, Carl Love wrote: > Kewen: > > On 6/3/24 23:00, Kewen.Lin wrote: >> Hi Carl, >> >> on 2024/5/29 23:52, Carl Love wrote: >>> This patch was approved in the previous series. There are no changes to >>> this patch. Reposti

Re: [PATCH 23/52] mmix: Remove macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE

2024-06-05 Thread Kewen.Lin
Hi Hans-Peter, on 2024/6/6 09:41, Hans-Peter Nilsson wrote: > On Sun, 2 Jun 2024, Kewen Lin wrote: > >> This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE >> defines in mmix port. > > This is fine once prerequisites are in place. > > If I may add a nit: In these target change commit

Re: [Patch-2, rs6000] Eliminate unnecessary byte swaps for duplicated constant vector store [PR113325]

2024-06-05 Thread Kewen.Lin
Hi, on 2024/6/6 09:43, HAO CHEN GUI wrote: > Hi Kewen, > > 在 2024/6/5 17:00, Kewen.Lin 写道: >> This predicate can be moved to its only use (define_insn part condition). >> The const_vector match_code check is redundant as const_vec_duplicate_p >> already checks that,

Re: [PATCH 01/52] ada: Replace use of LONG_DOUBLE_TYPE_SIZE

2024-06-05 Thread Kewen.Lin
Hi Eric, on 2024/6/3 16:51, Eric Botcazou wrote: >> Joseph pointed out "floating types should have their mode, >> not a poorly defined precision value" in the discussion[1], >> as he and Richi suggested, the existing macros >> {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE will be replaced with a >> hook

Re: [PATCH 02/52 v2] d: Replace use of LONG_DOUBLE_TYPE_SIZE

2024-06-05 Thread Kewen.Lin
Hi Iain, on 2024/6/4 19:35, Iain Buclaw wrote: > Excerpts from Kewen.Lin's message of Juni 4, 2024 5:17 am: >> Hi Iain, >> >> on 2024/6/3 22:39, Iain Buclaw wrote: >>> Excerpts from Kewen.Lin's message of Juni 3, 2024 10:57 am: Hi Iain, on 2024/6/3 16:40, Iain Buclaw wrote: >

Re: [PATCH 03/52] fortran: Replace uses of {FLOAT, {, LONG_}DOUBLE}_TYPE_SIZE

2024-06-05 Thread Kewen.Lin
Hi Harald, on 2024/6/4 04:01, Harald Anlauf wrote: > Hi, > > Am 03.06.24 um 05:00 schrieb Kewen Lin: >> Joseph pointed out "floating types should have their mode, >> not a poorly defined precision value" in the discussion[1], >> as he and Richi suggested, the existing macros >>

Re: [PATCH 07/52] darwin: Replace use of LONG_DOUBLE_TYPE_SIZE

2024-06-05 Thread Kewen.Lin
Hi Iain, on 2024/6/4 14:21, Iain Sandoe wrote: > Hi Kewen, > >> On 3 Jun 2024, at 04:00, Kewen Lin wrote: >> >> Joseph pointed out "floating types should have their mode, >> not a poorly defined precision value" in the discussion[1], >> as he and Richi suggested, the existing macros >>

Re: [Patch-2, rs6000] Eliminate unnecessary byte swaps for duplicated constant vector store [PR113325]

2024-06-05 Thread Kewen.Lin
Hi Haochen, on 2024/1/26 09:17, HAO CHEN GUI wrote: > Hi, > This patch creates an insn_and_split pattern which helps the duplicated > constant vector replace the source pseudo of store insn in fwprop pass. > Thus the store can be implemented by a single stxvd2x and it eliminates the >

Re: [PATCH 4/13 ver 3] rs6000, extend the current vec_{un,}signed{e,o} built-ins

2024-06-04 Thread Kewen.Lin
Hi, on 2024/5/29 23:58, Carl Love wrote: > Updated the patch per the feedback comments from the previous version. > > Carl > --- > > rs6000, extend the current vec_{un,}signed{e,o} built-ins > > The built-ins

Re: [PATCH 5/13 ver 3] rs6000, Remove redundant float/double type conversions

2024-06-04 Thread Kewen.Lin
Hi, on 2024/5/30 00:00, Carl Love wrote: > This is a new patch to removed the built-ins that were inadvertently missing > in the previous series. > > Carl > -- > > rs6000, Remove redundant float/double

Re: [PATCH 1/13 ver 3] rs6000, Remove __builtin_vsx_cmple* builtins

2024-06-04 Thread Kewen.Lin
Hi Carl, on 2024/5/29 23:52, Carl Love wrote: > This patch was approved in the previous series. There are no changes to this > patch. Reposting for completeness. I guess you can just push the approved ones, as there is no dependency between any two of them? It can help to reduce the size of

Re: [PATCH 12/13 ver 3] rs6000, remove __builtin_vsx_xvcmpeqsp_p built-in

2024-06-04 Thread Kewen.Lin
Hi Carl, on 2024/5/30 00:11, Carl Love wrote: > This was patch 11 from the previous series. Patch was updated to address > feedback comments. > >Carl > -- > > rs6000, remove __builtin_vsx_xvcmpeqsp_p built-in >

Re: [PATCH 13/13 ver 3] rs6000, remove vector set and vector init built-ins.

2024-06-04 Thread Kewen.Lin
Hi, on 2024/5/30 00:16, Carl Love wrote: > This was patch 13 from the previous series. Note the previous series patch > 12 was dropped. This patch is the same as the previous version. The > additional work to remove __builtin_vec_set_v1ti, __builtin_vec_set_v2di, > __builtin_vec_set_v2d

Re: [PATCH 11/13 ver 3] rs6000, extend vec_xxpermdi built-in for __int128 args

2024-06-03 Thread Kewen.Lin
Hi, on 2024/5/30 00:10, Carl Love wrote: > This was patch 10 from the previous series. The patch was updated to > address feedback comments. > > Carl > --- > > rs6000, extend vec_xxpermdi built-in for __int128 args

Re: [PATCH 9/13 ver 3] rs6000, remove __builtin_vsx_vperm_* built-ins

2024-06-03 Thread Kewen.Lin
Hi, on 2024/5/30 00:06, Carl Love wrote: > This was patch 8 in the previous series. Updated patch per the feedback > comments. > > Carl > > > rs6000, remove __builtin_vsx_vperm_* built-ins > >

Re: [PATCH 8/13 ver 3] rs6000, remove the vec_xxsel built-ins, they are, duplicates

2024-06-03 Thread Kewen.Lin
Hi, on 2024/5/30 00:05, Carl Love wrote: > This was patch 7 in the previous series. Patch was updated to address the > feedback comments. > > Carl > > > rs6000, remove the vec_xxsel

Re: [PATCH 7/13 ver 3] rs6000, add overloaded vec_sel with int128 arguments

2024-06-03 Thread Kewen.Lin
Hi, on 2024/5/30 00:03, Carl Love wrote: > This was patch 6 in the previous series. Updated the documentation file per > the comments. No functional changes to the patch. > > Carl > > > rs6000, add

Re: [PATCH 3/13 ver 3] rs6000, fix error in unsigned vector float to unsigned int built-in definition

2024-06-03 Thread Kewen.Lin
Hi, on 2024/5/29 23:56, Carl Love wrote: > This patch was updated per the feedback comment from the previous version in > series 2. > > Carl > --- > > rs6000, fix error in unsigned vector float to

Re: [PATCH] fix PowerPC < 7 w/ Altivec not to default to power7

2024-06-03 Thread Kewen.Lin
Hi Rene, on 2024/5/31 22:57, Rene Rebe wrote: > Hi Kewen, > > thank you for your reply. > >> on 2024/3/8 19:33, Rene Rebe wrote: >>> This might not be the best timing -short before a major release-, >>> however, Sam just commented on the bug I filled years ago [1], so here >>> we go: >>> >>>

[PATCH 09/52 v2] Replace {FLOAT, {, LONG_}DOUBLE}_TYPE_SIZE with new hook mode_for_floating_type

2024-06-03 Thread Kewen.Lin
Hi Joseph, on 2024/6/4 01:59, Joseph Myers wrote: > On Sun, 2 Jun 2024, Kewen Lin wrote: > >> +value less than or equal to mode precision of the mode used for C type >> +@code{long double} (from hook @code{targetm.c.mode_for_floating_type} >> +with tree_index TI_LONG_DOUBLE_TYPE). If you do not

Re: [PATCH 06/52] m2: Replace uses of {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE

2024-06-03 Thread Kewen.Lin
Hi Joseph and Gaius, on 2024/6/4 02:02, Joseph Myers wrote: > On Sun, 2 Jun 2024, Kewen Lin wrote: > >> diff --git a/gcc/m2/gm2-gcc/m2type.cc b/gcc/m2/gm2-gcc/m2type.cc >> index 571923c08ef..d52cbdf0b99 100644 >> --- a/gcc/m2/gm2-gcc/m2type.cc >> +++ b/gcc/m2/gm2-gcc/m2type.cc >> @@ -1420,7

[PATCH 02/52 v2] d: Replace use of LONG_DOUBLE_TYPE_SIZE

2024-06-03 Thread Kewen.Lin
Hi Iain, on 2024/6/3 22:39, Iain Buclaw wrote: > Excerpts from Kewen.Lin's message of Juni 3, 2024 10:57 am: >> Hi Iain, >> >> on 2024/6/3 16:40, Iain Buclaw wrote: >>> Excerpts from Kewen Lin's message of Juni 3, 2024 5:00 am: Joseph pointed out "floating types should have their mode,

Re: [PATCH 17/52] gcn: Remove macros {FLOAT, DOUBLE, LONG_DOUBLE}_TYPE_SIZE

2024-06-03 Thread Kewen.Lin
Hi Andrew, on 2024/6/3 17:14, Andrew Stubbs wrote: > On 03/06/2024 04:01, Kewen Lin wrote: >> This is to remove macros {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE >> defines in gcn port. >> >> gcc/ChangeLog: >> >> * config/gcn/gcn.h (FLOAT_TYPE_SIZE): Remove. >> (DOUBLE_TYPE_SIZE): Likewise. >>

Re: [PATCH 51/52] sparc: New hook implementation sparc_c_mode_for_floating_type

2024-06-03 Thread Kewen.Lin
Hi Eric, on 2024/6/3 17:02, Eric Botcazou wrote: >> * config/sparc/sparc.cc (sparc_c_mode_for_floating_type): New >> (TARGET_C_MODE_FOR_FLOATING_TYPE): New macro. >> (FLOAT_TYPE_SIZE): Remove. >> (DOUBLE_TYPE_SIZE): Likewise. >> (LONG_DOUBLE_TYPE_SIZE): Rename to ... >>

Re: [PATCH 09/52] Replace {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE with new hook mode_for_floating_type

2024-06-03 Thread Kewen.Lin
Hi Richi, on 2024/6/3 14:49, Richard Biener wrote: > On Mon, Jun 3, 2024 at 5:02 AM Kewen Lin wrote: >> >> Currently how we determine which mode will be used for a >> floating point type is that for a given type precision >> (size) call mode_for_size to get the first mode which has >> this size

Re: [PATCH 02/52] d: Replace use of LONG_DOUBLE_TYPE_SIZE

2024-06-03 Thread Kewen.Lin
Hi Iain, on 2024/6/3 16:40, Iain Buclaw wrote: > Excerpts from Kewen Lin's message of Juni 3, 2024 5:00 am: >> Joseph pointed out "floating types should have their mode, >> not a poorly defined precision value" in the discussion[1], >> as he and Richi suggested, the existing macros >>

Re: [PATCH-1, rs6000] Add a new type of CC mode - CCBCD for bcd insns [PR100736, PR114732]

2024-05-31 Thread Kewen.Lin
Hi Haochen, on 2024/5/30 11:14, HAO CHEN GUI wrote: > Hi Kewen, > > 在 2024/5/29 13:26, Kewen.Lin 写道: >> I can understand re-using "unordered" and "eq" will save some efforts than >> doing with unspecs, but they are actually RTL codes instead of bits o

Re: [PATCH v3 #1/2] [rs6000] adjust return_pc debug attrs

2024-05-31 Thread Kewen.Lin
on 2024/5/29 14:52, Alexandre Oliva wrote: > On May 27, 2024, "Kewen.Lin" wrote: > >> I wonder if it's possible to have a test case for this? > > gcc.dg/guality/pr54519-[34].c at -O[1g] are fixed by this patch on Nice! > ppc64le-linux-gnu. Are these the sort

Re: [PATCH v2] add explicit ABI and align options to pr88233.c

2024-05-31 Thread Kewen.Lin
on 2024/5/29 14:32, Alexandre Oliva wrote: > On May 26, 2024, "Kewen.Lin" wrote: > >> Hi, >> on 2024/4/22 17:38, Alexandre Oliva wrote: >>> Ping? >>> https://gcc.gnu.org/pipermail/gcc-patches/2021-March/566530.html >>> (modified ver

Re: [PATCH-1, rs6000] Add a new type of CC mode - CCBCD for bcd insns [PR100736, PR114732]

2024-05-28 Thread Kewen.Lin
Hi, on 2024/4/30 15:18, HAO CHEN GUI wrote: > Hi, > It's the first patch of a series of patches optimizing CC modes on > rs6000. > > bcd insns set all four bits of a CR field. But it has different single > bit reverse behavior than CCFP's. The forth bit of bcd cr fields is used > to indict

Re: [RFC/PATCH] Replace {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE with new hook

2024-05-28 Thread Kewen.Lin
Hi Richi and Joseph, on 2024/5/24 20:23, Richard Biener wrote: > On Fri, May 24, 2024 at 12:20 PM Kewen.Lin wrote: >> btw, the attached patch is bootstrapped and regtested on >> powerpc64-linux-gnu and powerpc64le-linux-gnu with all >> languages on, cross cc1 built we

Re: [PATCHv3] Optab: add isfinite_optab for __builtin_isfinite

2024-05-28 Thread Kewen.Lin
on 2024/5/28 20:09, Richard Biener wrote: > On Tue, May 28, 2024 at 9:09 AM Kewen.Lin wrote: >> >> Hi, >> >> on 2024/5/27 20:54, Richard Biener wrote: >>> On Mon, May 27, 2024 at 11:37 AM HAO CHEN GUI wrote: >>>> >>>> Hi, >>>

Re: [PATCHv3] Optab: add isfinite_optab for __builtin_isfinite

2024-05-28 Thread Kewen.Lin
Hi, on 2024/5/27 20:54, Richard Biener wrote: > On Mon, May 27, 2024 at 11:37 AM HAO CHEN GUI wrote: >> >> Hi, >> This patch adds an optab for __builtin_isfinite. The finite check can be >> implemented on rs6000 by a single instruction. It needs an optab to be >> expanded to the certain

  1   2   3   4   5   6   7   8   9   10   >