diff mbox series

[v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1

Message ID 20240422134734.1909499-1-pan2.li@intel.com
State New
Headers show
Series [v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1 | expand

Commit Message

Li, Pan2 April 22, 2024, 1:47 p.m. UTC
From: Pan Li <pan2.li@intel.com>

After we reverted below 2 commits, the reference to attr need some
adjustment as the group_overlap is no longer available.

* RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
* RISC-V: Rename vconstraint into group_overlap

The below tests are passed for this patch.

* The rv64gcv fully regression tests.

gcc/ChangeLog:

	* config/riscv/vector-crypto.md:

Signed-off-by: Pan Li <pan2.li@intel.com>
---
 gcc/config/riscv/vector-crypto.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

钟居哲 April 22, 2024, 2:04 p.m. UTC | #1
lgtm



juzhe.zhong@rivai.ai
 
From: pan2.li
Date: 2024-04-22 21:47
To: gcc-patches
CC: juzhe.zhong; kito.cheng; rdapp.gcc; Pan Li
Subject: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1
From: Pan Li <pan2.li@intel.com>
 
After we reverted below 2 commits, the reference to attr need some
adjustment as the group_overlap is no longer available.
 
* RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
* RISC-V: Rename vconstraint into group_overlap
 
The below tests are passed for this patch.
 
* The rv64gcv fully regression tests.
 
gcc/ChangeLog:
 
* config/riscv/vector-crypto.md:
 
Signed-off-by: Pan Li <pan2.li@intel.com>
---
gcc/config/riscv/vector-crypto.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
 
diff --git a/gcc/config/riscv/vector-crypto.md b/gcc/config/riscv/vector-crypto.md
index 519c6a10d94..23dc549e5b8 100755
--- a/gcc/config/riscv/vector-crypto.md
+++ b/gcc/config/riscv/vector-crypto.md
@@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
   "vwsll.v%o4\t%0,%3,%4%p1"
   [(set_attr "type" "vwsll")
    (set_attr "mode" "<V_DOUBLE_TRUNC>")
-   (set_attr "group_overlap" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
+   (set_attr "vconstraint" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
;; vbrev.v vbrev8.v vrev8.v
(define_insn "@pred_v<rev><mode>"
Palmer Dabbelt April 22, 2024, 4:57 p.m. UTC | #2
On Mon, 22 Apr 2024 06:47:34 PDT (-0700), pan2.li@intel.com wrote:
> From: Pan Li <pan2.li@intel.com>
>
> After we reverted below 2 commits, the reference to attr need some
> adjustment as the group_overlap is no longer available.
>
> * RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
> * RISC-V: Rename vconstraint into group_overlap

That landed as cacc55a4c0b ("Revert "RISC-V: Rename vconstraint into 
group_overlap""), but I can't find a review on the lists and the commit 
appears to not even build.

Did I miss the reviews or something?

> The below tests are passed for this patch.
>
> * The rv64gcv fully regression tests.
>
> gcc/ChangeLog:
>
> 	* config/riscv/vector-crypto.md:
>
> Signed-off-by: Pan Li <pan2.li@intel.com>
> ---
>  gcc/config/riscv/vector-crypto.md | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gcc/config/riscv/vector-crypto.md b/gcc/config/riscv/vector-crypto.md
> index 519c6a10d94..23dc549e5b8 100755
> --- a/gcc/config/riscv/vector-crypto.md
> +++ b/gcc/config/riscv/vector-crypto.md
> @@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
>    "vwsll.v%o4\t%0,%3,%4%p1"
>    [(set_attr "type" "vwsll")
>     (set_attr "mode" "<V_DOUBLE_TRUNC>")
> -   (set_attr "group_overlap" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
> +   (set_attr "vconstraint" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
>
>  ;; vbrev.v vbrev8.v vrev8.v
>  (define_insn "@pred_v<rev><mode>"
Patrick O'Neill April 22, 2024, 7:55 p.m. UTC | #3
Hi Pan,

I was running the testsuite for this and noticed an ICE scroll by when 
this patch is applied to cacc55a4c0be8d0bc7417b6a28924eadbbe428e3 for 
rv64gcv:

FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
compiler error: in extract_insn, at recog.cc:2812)

I'll send the full list of new failures once the runs finish.

Thanks,
Patrick

On 4/22/24 06:47, pan2.li@intel.com wrote:
> From: Pan Li <pan2.li@intel.com>
>
> After we reverted below 2 commits, the reference to attr need some
> adjustment as the group_overlap is no longer available.
>
> * RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
> * RISC-V: Rename vconstraint into group_overlap
>
> The below tests are passed for this patch.
>
> * The rv64gcv fully regression tests.
>
> gcc/ChangeLog:
>
> 	* config/riscv/vector-crypto.md:
>
> Signed-off-by: Pan Li <pan2.li@intel.com>
> ---
>   gcc/config/riscv/vector-crypto.md | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gcc/config/riscv/vector-crypto.md b/gcc/config/riscv/vector-crypto.md
> index 519c6a10d94..23dc549e5b8 100755
> --- a/gcc/config/riscv/vector-crypto.md
> +++ b/gcc/config/riscv/vector-crypto.md
> @@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
>     "vwsll.v%o4\t%0,%3,%4%p1"
>     [(set_attr "type" "vwsll")
>      (set_attr "mode" "<V_DOUBLE_TRUNC>")
> -   (set_attr "group_overlap" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
> +   (set_attr "vconstraint" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
>   
>   ;; vbrev.v vbrev8.v vrev8.v
>   (define_insn "@pred_v<rev><mode>"
钟居哲 April 22, 2024, 10:06 p.m. UTC | #4
I think the revert patch exposes latent bug, Li Pan will look into it.



juzhe.zhong@rivai.ai
 
From: Patrick O'Neill
Date: 2024-04-23 03:55
To: pan2.li; gcc-patches
CC: juzhe.zhong; kito.cheng; rdapp.gcc
Subject: Re: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1
Hi Pan,
 
I was running the testsuite for this and noticed an ICE scroll by when 
this patch is applied to cacc55a4c0be8d0bc7417b6a28924eadbbe428e3 for 
rv64gcv:
 
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
compiler error: in extract_insn, at recog.cc:2812)
 
I'll send the full list of new failures once the runs finish.
 
Thanks,
Patrick
 
On 4/22/24 06:47, pan2.li@intel.com wrote:
> From: Pan Li <pan2.li@intel.com>
>
> After we reverted below 2 commits, the reference to attr need some
> adjustment as the group_overlap is no longer available.
>
> * RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
> * RISC-V: Rename vconstraint into group_overlap
>
> The below tests are passed for this patch.
>
> * The rv64gcv fully regression tests.
>
> gcc/ChangeLog:
>
> * config/riscv/vector-crypto.md:
>
> Signed-off-by: Pan Li <pan2.li@intel.com>
> ---
>   gcc/config/riscv/vector-crypto.md | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gcc/config/riscv/vector-crypto.md b/gcc/config/riscv/vector-crypto.md
> index 519c6a10d94..23dc549e5b8 100755
> --- a/gcc/config/riscv/vector-crypto.md
> +++ b/gcc/config/riscv/vector-crypto.md
> @@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
>     "vwsll.v%o4\t%0,%3,%4%p1"
>     [(set_attr "type" "vwsll")
>      (set_attr "mode" "<V_DOUBLE_TRUNC>")
> -   (set_attr "group_overlap" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
> +   (set_attr "vconstraint" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
>   
>   ;; vbrev.v vbrev8.v vrev8.v
>   (define_insn "@pred_v<rev><mode>"
Li, Pan2 April 22, 2024, 11 p.m. UTC | #5
Sure thing. Sorry for that Fortran is not fully tested for this change, will take a look into it ASAP.

Pan

From: 钟居哲 <juzhe.zhong@rivai.ai>
Sent: Tuesday, April 23, 2024 6:06 AM
To: patrick <patrick@rivosinc.com>; Li, Pan2 <pan2.li@intel.com>; gcc-patches <gcc-patches@gcc.gnu.org>
Cc: kito.cheng <kito.cheng@gmail.com>; rdapp.gcc <rdapp.gcc@gmail.com>
Subject: Re: Re: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1

I think the revert patch exposes latent bug, Li Pan will look into it.
Patrick O'Neill April 23, 2024, 12:31 a.m. UTC | #6
This patch in particular does not cause any more regressions. It's one 
of the other reverts from the weekend.

Before the reverts [1]:
                                             |          gcc |          
g++ |     gfortran |
     rv64gcv/  lp64d/ medlow |   48/    32 |     12/    3|   12 /    2

After the reverts:
                                             |          gcc |          
g++ |     gfortran |
     rv64gcv/  lp64d/ medlow |   50 /    33 |   12 /     3 |   26 /     7 |


gcc new fails:
FAIL: gcc.dg/graphite/pr111878.c (internal compiler error: in 
extract_insn, at recog.cc:2812)
FAIL: gcc.dg/graphite/pr111878.c (test for excess errors)

gfortran new fails:
FAIL: gfortran.dg/graphite/id-27.f90   -O  (internal compiler error: in 
extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/id-27.f90   -O  (test for excess errors)
FAIL: gfortran.dg/graphite/pr14741.f90   -O  (internal compiler error: 
in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr14741.f90   -O  (test for excess errors)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
compiler error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (test for 
excess errors)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (test for excess errors)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
compiler error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (test for 
excess errors)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (test for excess errors)
FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (test for excess errors)


For future reference, the precommit does not do well with many unrelated 
patches that are dependent on eachother.
In the future sending these as a series would allow precommit to 
properly test them (as always you can see the testing results on 
patchworks).

Thanks,
Patrick

[1] https://github.com/patrick-rivos/gcc-postcommit-ci/issues/801

On 4/22/24 12:55, Patrick O'Neill wrote:
> Hi Pan,
>
> I was running the testsuite for this and noticed an ICE scroll by when 
> this patch is applied to cacc55a4c0be8d0bc7417b6a28924eadbbe428e3 for 
> rv64gcv:
>
> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
> compiler error: in extract_insn, at recog.cc:2812)
>
> I'll send the full list of new failures once the runs finish.
>
> Thanks,
> Patrick
>
> On 4/22/24 06:47, pan2.li@intel.com wrote:
>> From: Pan Li <pan2.li@intel.com>
>>
>> After we reverted below 2 commits, the reference to attr need some
>> adjustment as the group_overlap is no longer available.
>>
>> * RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
>> * RISC-V: Rename vconstraint into group_overlap
>>
>> The below tests are passed for this patch.
>>
>> * The rv64gcv fully regression tests.
>>
>> gcc/ChangeLog:
>>
>>     * config/riscv/vector-crypto.md:
>>
>> Signed-off-by: Pan Li <pan2.li@intel.com>
>> ---
>>   gcc/config/riscv/vector-crypto.md | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/gcc/config/riscv/vector-crypto.md 
>> b/gcc/config/riscv/vector-crypto.md
>> index 519c6a10d94..23dc549e5b8 100755
>> --- a/gcc/config/riscv/vector-crypto.md
>> +++ b/gcc/config/riscv/vector-crypto.md
>> @@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
>>     "vwsll.v%o4\t%0,%3,%4%p1"
>>     [(set_attr "type" "vwsll")
>>      (set_attr "mode" "<V_DOUBLE_TRUNC>")
>> -   (set_attr "group_overlap" 
>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
>> +   (set_attr "vconstraint" 
>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
>>     ;; vbrev.v vbrev8.v vrev8.v
>>   (define_insn "@pred_v<rev><mode>"
Li, Pan2 April 23, 2024, 2:32 a.m. UTC | #7
Thanks Patrick.

Turn out that the make report cannot tell the error like below and then the graphite.exp test will never run.
That explains why I missed test failures, will take care of it ASAP.

sorry, unimplemented: Graphite loop optimizations cannot be used (isl is not available)

Pan

-----Original Message-----
From: Patrick O'Neill <patrick@rivosinc.com> 
Sent: Tuesday, April 23, 2024 8:32 AM
To: Li, Pan2 <pan2.li@intel.com>; gcc-patches@gcc.gnu.org
Cc: juzhe.zhong@rivai.ai; kito.cheng@gmail.com; rdapp.gcc@gmail.com
Subject: Re: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1

This patch in particular does not cause any more regressions. It's one 
of the other reverts from the weekend.

Before the reverts [1]:
                                             |          gcc |          
g++ |     gfortran |
     rv64gcv/  lp64d/ medlow |   48/    32 |     12/    3|   12 /    2

After the reverts:
                                             |          gcc |          
g++ |     gfortran |
     rv64gcv/  lp64d/ medlow |   50 /    33 |   12 /     3 |   26 /     7 |


gcc new fails:
FAIL: gcc.dg/graphite/pr111878.c (internal compiler error: in 
extract_insn, at recog.cc:2812)
FAIL: gcc.dg/graphite/pr111878.c (test for excess errors)

gfortran new fails:
FAIL: gfortran.dg/graphite/id-27.f90   -O  (internal compiler error: in 
extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/id-27.f90   -O  (test for excess errors)
FAIL: gfortran.dg/graphite/pr14741.f90   -O  (internal compiler error: 
in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr14741.f90   -O  (test for excess errors)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
compiler error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (test for 
excess errors)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (test for excess errors)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
compiler error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (test for 
excess errors)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (test for excess errors)
FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (test for excess errors)


For future reference, the precommit does not do well with many unrelated 
patches that are dependent on eachother.
In the future sending these as a series would allow precommit to 
properly test them (as always you can see the testing results on 
patchworks).

Thanks,
Patrick

[1] https://github.com/patrick-rivos/gcc-postcommit-ci/issues/801

On 4/22/24 12:55, Patrick O'Neill wrote:
> Hi Pan,
>
> I was running the testsuite for this and noticed an ICE scroll by when 
> this patch is applied to cacc55a4c0be8d0bc7417b6a28924eadbbe428e3 for 
> rv64gcv:
>
> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
> compiler error: in extract_insn, at recog.cc:2812)
>
> I'll send the full list of new failures once the runs finish.
>
> Thanks,
> Patrick
>
> On 4/22/24 06:47, pan2.li@intel.com wrote:
>> From: Pan Li <pan2.li@intel.com>
>>
>> After we reverted below 2 commits, the reference to attr need some
>> adjustment as the group_overlap is no longer available.
>>
>> * RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
>> * RISC-V: Rename vconstraint into group_overlap
>>
>> The below tests are passed for this patch.
>>
>> * The rv64gcv fully regression tests.
>>
>> gcc/ChangeLog:
>>
>>     * config/riscv/vector-crypto.md:
>>
>> Signed-off-by: Pan Li <pan2.li@intel.com>
>> ---
>>   gcc/config/riscv/vector-crypto.md | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/gcc/config/riscv/vector-crypto.md 
>> b/gcc/config/riscv/vector-crypto.md
>> index 519c6a10d94..23dc549e5b8 100755
>> --- a/gcc/config/riscv/vector-crypto.md
>> +++ b/gcc/config/riscv/vector-crypto.md
>> @@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
>>     "vwsll.v%o4\t%0,%3,%4%p1"
>>     [(set_attr "type" "vwsll")
>>      (set_attr "mode" "<V_DOUBLE_TRUNC>")
>> -   (set_attr "group_overlap" 
>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
>> +   (set_attr "vconstraint" 
>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
>>     ;; vbrev.v vbrev8.v vrev8.v
>>   (define_insn "@pred_v<rev><mode>"
Li, Pan2 April 23, 2024, 6:50 a.m. UTC | #8
Hi Patrick,

After some investigation and double confirm, I think the gcc.dg/graphite/pr111878.c ice may have nothing to do
with the patches of revert series as it exists for quit a while. It may related to below commit 

2e7abd09621a4401d44f4513adf126bce4b4828b RISC-V: Block VLSmodes according to TARGET_MAX_LMUL and BITS_PER_RISCV_VECTOR

Could you please help to double check about it *manually*? Here is my step(s) for your reference and I will take care of this failure soon.

../__RISC-V_INSTALL___RV64/bin/riscv64-unknown-elf-gcc --version      
riscv64-unknown-elf-gcc (GCC) 14.0.0 20231205 (experimental)
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

1. download isl-0.24, let isl -> /some-where/riscv-gnu-toolchain/gcc/isl-0.24
2. mkdir __BUILD__ && cd __BUILD__ && ../configure \
  --target=riscv64-unknown-elf \
  --prefix=${INSTALL_DIR} \
  --disable-shared \
  --enable-threads \
  --enable-tls \
  --enable-languages=c,c++,fortran \
  --with-system-zlib \
  --with-newlib \
  --disable-libmudflap \
  --disable-libssp \
  --disable-libquadmath \
  --disable-libgomp \
  --enable-nls \
  --disable-tm-clone-registry \
  --src=`pwd`/../ \
  --with-abi=lp64d \
  --with-arch=rv64gcv \
  --with-tune=rocket \
  --with-isa-spec=20191213 \
  CFLAGS_FOR_BUILD="-O0 -g" \
  CXXFLAGS_FOR_BUILD="-O0 -g" \
  CFLAGS_FOR_TARGET="-O0  -g" \
  CXXFLAGS_FOR_TARGET="-O0 -g" \
  BOOT_CFLAGS="-O0 -g" \
  CFLAGS="-O0 -g" \
  CXXFLAGS="-O0 -g" \
  GM2FLAGS_FOR_TARGET="-O0 -g" \
  GOCFLAGS_FOR_TARGET="-O0 -g" \
  GDCFLAGS_FOR_TARGET="-O0 -g"
make -j $(nproc) all-gcc && make install-gcc
3. ../__RISC-V_INSTALL___RV64/bin/riscv64-unknown-elf-gcc gcc/testsuite/gcc.dg/graphite/pr111878.c -O3 -fgraphite-identity -fsave-optimization-record -march=rv64gcv -mabi=lp64d -c -S -o -

Pan

-----Original Message-----
From: Li, Pan2 
Sent: Tuesday, April 23, 2024 10:32 AM
To: Patrick O'Neill <patrick@rivosinc.com>; gcc-patches@gcc.gnu.org
Cc: juzhe.zhong@rivai.ai; kito.cheng@gmail.com; rdapp.gcc@gmail.com
Subject: RE: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1

Thanks Patrick.

Turn out that the make report cannot tell the error like below and then the graphite.exp test will never run.
That explains why I missed test failures, will take care of it ASAP.

sorry, unimplemented: Graphite loop optimizations cannot be used (isl is not available)

Pan

-----Original Message-----
From: Patrick O'Neill <patrick@rivosinc.com> 
Sent: Tuesday, April 23, 2024 8:32 AM
To: Li, Pan2 <pan2.li@intel.com>; gcc-patches@gcc.gnu.org
Cc: juzhe.zhong@rivai.ai; kito.cheng@gmail.com; rdapp.gcc@gmail.com
Subject: Re: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1

This patch in particular does not cause any more regressions. It's one 
of the other reverts from the weekend.

Before the reverts [1]:
                                             |          gcc |          
g++ |     gfortran |
     rv64gcv/  lp64d/ medlow |   48/    32 |     12/    3|   12 /    2

After the reverts:
                                             |          gcc |          
g++ |     gfortran |
     rv64gcv/  lp64d/ medlow |   50 /    33 |   12 /     3 |   26 /     7 |


gcc new fails:
FAIL: gcc.dg/graphite/pr111878.c (internal compiler error: in 
extract_insn, at recog.cc:2812)
FAIL: gcc.dg/graphite/pr111878.c (test for excess errors)

gfortran new fails:
FAIL: gfortran.dg/graphite/id-27.f90   -O  (internal compiler error: in 
extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/id-27.f90   -O  (test for excess errors)
FAIL: gfortran.dg/graphite/pr14741.f90   -O  (internal compiler error: 
in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr14741.f90   -O  (test for excess errors)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
compiler error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (test for 
excess errors)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (test for excess errors)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
compiler error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
-funroll-loops -fpeel-loops -ftracer -finline-functions  (test for 
excess errors)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (test for excess errors)
FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (internal compiler 
error: in extract_insn, at recog.cc:2812)
FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (test for excess errors)


For future reference, the precommit does not do well with many unrelated 
patches that are dependent on eachother.
In the future sending these as a series would allow precommit to 
properly test them (as always you can see the testing results on 
patchworks).

Thanks,
Patrick

[1] https://github.com/patrick-rivos/gcc-postcommit-ci/issues/801

On 4/22/24 12:55, Patrick O'Neill wrote:
> Hi Pan,
>
> I was running the testsuite for this and noticed an ICE scroll by when 
> this patch is applied to cacc55a4c0be8d0bc7417b6a28924eadbbe428e3 for 
> rv64gcv:
>
> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer 
> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal 
> compiler error: in extract_insn, at recog.cc:2812)
>
> I'll send the full list of new failures once the runs finish.
>
> Thanks,
> Patrick
>
> On 4/22/24 06:47, pan2.li@intel.com wrote:
>> From: Pan Li <pan2.li@intel.com>
>>
>> After we reverted below 2 commits, the reference to attr need some
>> adjustment as the group_overlap is no longer available.
>>
>> * RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
>> * RISC-V: Rename vconstraint into group_overlap
>>
>> The below tests are passed for this patch.
>>
>> * The rv64gcv fully regression tests.
>>
>> gcc/ChangeLog:
>>
>>     * config/riscv/vector-crypto.md:
>>
>> Signed-off-by: Pan Li <pan2.li@intel.com>
>> ---
>>   gcc/config/riscv/vector-crypto.md | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/gcc/config/riscv/vector-crypto.md 
>> b/gcc/config/riscv/vector-crypto.md
>> index 519c6a10d94..23dc549e5b8 100755
>> --- a/gcc/config/riscv/vector-crypto.md
>> +++ b/gcc/config/riscv/vector-crypto.md
>> @@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
>>     "vwsll.v%o4\t%0,%3,%4%p1"
>>     [(set_attr "type" "vwsll")
>>      (set_attr "mode" "<V_DOUBLE_TRUNC>")
>> -   (set_attr "group_overlap" 
>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
>> +   (set_attr "vconstraint" 
>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
>>     ;; vbrev.v vbrev8.v vrev8.v
>>   (define_insn "@pred_v<rev><mode>"
Patrick O'Neill April 23, 2024, 2:45 p.m. UTC | #9
Hi Pan,

Sorry about that. It looks like there was difference between my local 
machine and CI machine.

 From the CI it looks like we're back to the failure list we had on friday.

I'll do some local testing to manually confirm this.

Thanks,
Patrick

On 4/22/24 23:50, Li, Pan2 wrote:

> Hi Patrick,
>
> After some investigation and double confirm, I think the gcc.dg/graphite/pr111878.c ice may have nothing to do
> with the patches of revert series as it exists for quit a while. It may related to below commit
>
> 2e7abd09621a4401d44f4513adf126bce4b4828b RISC-V: Block VLSmodes according to TARGET_MAX_LMUL and BITS_PER_RISCV_VECTOR
>
> Could you please help to double check about it *manually*? Here is my step(s) for your reference and I will take care of this failure soon.
>
> ../__RISC-V_INSTALL___RV64/bin/riscv64-unknown-elf-gcc --version
> riscv64-unknown-elf-gcc (GCC) 14.0.0 20231205 (experimental)
> Copyright (C) 2023 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> 1. download isl-0.24, let isl -> /some-where/riscv-gnu-toolchain/gcc/isl-0.24
> 2. mkdir __BUILD__ && cd __BUILD__ && ../configure \
>    --target=riscv64-unknown-elf \
>    --prefix=${INSTALL_DIR} \
>    --disable-shared \
>    --enable-threads \
>    --enable-tls \
>    --enable-languages=c,c++,fortran \
>    --with-system-zlib \
>    --with-newlib \
>    --disable-libmudflap \
>    --disable-libssp \
>    --disable-libquadmath \
>    --disable-libgomp \
>    --enable-nls \
>    --disable-tm-clone-registry \
>    --src=`pwd`/../ \
>    --with-abi=lp64d \
>    --with-arch=rv64gcv \
>    --with-tune=rocket \
>    --with-isa-spec=20191213 \
>    CFLAGS_FOR_BUILD="-O0 -g" \
>    CXXFLAGS_FOR_BUILD="-O0 -g" \
>    CFLAGS_FOR_TARGET="-O0  -g" \
>    CXXFLAGS_FOR_TARGET="-O0 -g" \
>    BOOT_CFLAGS="-O0 -g" \
>    CFLAGS="-O0 -g" \
>    CXXFLAGS="-O0 -g" \
>    GM2FLAGS_FOR_TARGET="-O0 -g" \
>    GOCFLAGS_FOR_TARGET="-O0 -g" \
>    GDCFLAGS_FOR_TARGET="-O0 -g"
> make -j $(nproc) all-gcc && make install-gcc
> 3. ../__RISC-V_INSTALL___RV64/bin/riscv64-unknown-elf-gcc gcc/testsuite/gcc.dg/graphite/pr111878.c -O3 -fgraphite-identity -fsave-optimization-record -march=rv64gcv -mabi=lp64d -c -S -o -
>
> Pan
>
> -----Original Message-----
> From: Li, Pan2
> Sent: Tuesday, April 23, 2024 10:32 AM
> To: Patrick O'Neill <patrick@rivosinc.com>; gcc-patches@gcc.gnu.org
> Cc: juzhe.zhong@rivai.ai; kito.cheng@gmail.com; rdapp.gcc@gmail.com
> Subject: RE: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1
>
> Thanks Patrick.
>
> Turn out that the make report cannot tell the error like below and then the graphite.exp test will never run.
> That explains why I missed test failures, will take care of it ASAP.
>
> sorry, unimplemented: Graphite loop optimizations cannot be used (isl is not available)
>
> Pan
>
> -----Original Message-----
> From: Patrick O'Neill <patrick@rivosinc.com>
> Sent: Tuesday, April 23, 2024 8:32 AM
> To: Li, Pan2 <pan2.li@intel.com>; gcc-patches@gcc.gnu.org
> Cc: juzhe.zhong@rivai.ai; kito.cheng@gmail.com; rdapp.gcc@gmail.com
> Subject: Re: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1
>
> This patch in particular does not cause any more regressions. It's one
> of the other reverts from the weekend.
>
> Before the reverts [1]:
>                                               |          gcc |
> g++ |     gfortran |
>       rv64gcv/  lp64d/ medlow |   48/    32 |     12/    3|   12 /    2
>
> After the reverts:
>                                               |          gcc |
> g++ |     gfortran |
>       rv64gcv/  lp64d/ medlow |   50 /    33 |   12 /     3 |   26 /     7 |
>
>
> gcc new fails:
> FAIL: gcc.dg/graphite/pr111878.c (internal compiler error: in
> extract_insn, at recog.cc:2812)
> FAIL: gcc.dg/graphite/pr111878.c (test for excess errors)
>
> gfortran new fails:
> FAIL: gfortran.dg/graphite/id-27.f90   -O  (internal compiler error: in
> extract_insn, at recog.cc:2812)
> FAIL: gfortran.dg/graphite/id-27.f90   -O  (test for excess errors)
> FAIL: gfortran.dg/graphite/pr14741.f90   -O  (internal compiler error:
> in extract_insn, at recog.cc:2812)
> FAIL: gfortran.dg/graphite/pr14741.f90   -O  (test for excess errors)
> FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer
> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal
> compiler error: in extract_insn, at recog.cc:2812)
> FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer
> -funroll-loops -fpeel-loops -ftracer -finline-functions  (test for
> excess errors)
> FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (internal compiler
> error: in extract_insn, at recog.cc:2812)
> FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (test for excess errors)
> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer
> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal
> compiler error: in extract_insn, at recog.cc:2812)
> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer
> -funroll-loops -fpeel-loops -ftracer -finline-functions  (test for
> excess errors)
> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (internal compiler
> error: in extract_insn, at recog.cc:2812)
> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (test for excess errors)
> FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (internal compiler
> error: in extract_insn, at recog.cc:2812)
> FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (test for excess errors)
>
>
> For future reference, the precommit does not do well with many unrelated
> patches that are dependent on eachother.
> In the future sending these as a series would allow precommit to
> properly test them (as always you can see the testing results on
> patchworks).
>
> Thanks,
> Patrick
>
> [1] https://github.com/patrick-rivos/gcc-postcommit-ci/issues/801
>
> On 4/22/24 12:55, Patrick O'Neill wrote:
>> Hi Pan,
>>
>> I was running the testsuite for this and noticed an ICE scroll by when
>> this patch is applied to cacc55a4c0be8d0bc7417b6a28924eadbbe428e3 for
>> rv64gcv:
>>
>> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer
>> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal
>> compiler error: in extract_insn, at recog.cc:2812)
>>
>> I'll send the full list of new failures once the runs finish.
>>
>> Thanks,
>> Patrick
>>
>> On 4/22/24 06:47, pan2.li@intel.com wrote:
>>> From: Pan Li <pan2.li@intel.com>
>>>
>>> After we reverted below 2 commits, the reference to attr need some
>>> adjustment as the group_overlap is no longer available.
>>>
>>> * RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
>>> * RISC-V: Rename vconstraint into group_overlap
>>>
>>> The below tests are passed for this patch.
>>>
>>> * The rv64gcv fully regression tests.
>>>
>>> gcc/ChangeLog:
>>>
>>>      * config/riscv/vector-crypto.md:
>>>
>>> Signed-off-by: Pan Li <pan2.li@intel.com>
>>> ---
>>>    gcc/config/riscv/vector-crypto.md | 2 +-
>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/gcc/config/riscv/vector-crypto.md
>>> b/gcc/config/riscv/vector-crypto.md
>>> index 519c6a10d94..23dc549e5b8 100755
>>> --- a/gcc/config/riscv/vector-crypto.md
>>> +++ b/gcc/config/riscv/vector-crypto.md
>>> @@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
>>>      "vwsll.v%o4\t%0,%3,%4%p1"
>>>      [(set_attr "type" "vwsll")
>>>       (set_attr "mode" "<V_DOUBLE_TRUNC>")
>>> -   (set_attr "group_overlap"
>>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
>>> +   (set_attr "vconstraint"
>>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
>>>      ;; vbrev.v vbrev8.v vrev8.v
>>>    (define_insn "@pred_v<rev><mode>"
Palmer Dabbelt April 23, 2024, 5 p.m. UTC | #10
On Tue, 23 Apr 2024 07:45:03 PDT (-0700), Patrick O'Neill wrote:
> Hi Pan,
>
> Sorry about that. It looks like there was difference between my local
> machine and CI machine.
>
>  From the CI it looks like we're back to the failure list we had on friday.
>
> I'll do some local testing to manually confirm this.

Awesome, thanks. In the patchwork meeting, Kito was mentioning possibly 
wanting to revert some more of these widening ops?  If that's still the 
case we should get something on the lists as soon as we can, it's really 
late in the cycle already.

>
> Thanks,
> Patrick
>
> On 4/22/24 23:50, Li, Pan2 wrote:
>
>> Hi Patrick,
>>
>> After some investigation and double confirm, I think the gcc.dg/graphite/pr111878.c ice may have nothing to do
>> with the patches of revert series as it exists for quit a while. It may related to below commit
>>
>> 2e7abd09621a4401d44f4513adf126bce4b4828b RISC-V: Block VLSmodes according to TARGET_MAX_LMUL and BITS_PER_RISCV_VECTOR
>>
>> Could you please help to double check about it *manually*? Here is my step(s) for your reference and I will take care of this failure soon.
>>
>> ../__RISC-V_INSTALL___RV64/bin/riscv64-unknown-elf-gcc --version
>> riscv64-unknown-elf-gcc (GCC) 14.0.0 20231205 (experimental)
>> Copyright (C) 2023 Free Software Foundation, Inc.
>> This is free software; see the source for copying conditions.  There is NO
>> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>>
>> 1. download isl-0.24, let isl -> /some-where/riscv-gnu-toolchain/gcc/isl-0.24
>> 2. mkdir __BUILD__ && cd __BUILD__ && ../configure \
>>    --target=riscv64-unknown-elf \
>>    --prefix=${INSTALL_DIR} \
>>    --disable-shared \
>>    --enable-threads \
>>    --enable-tls \
>>    --enable-languages=c,c++,fortran \
>>    --with-system-zlib \
>>    --with-newlib \
>>    --disable-libmudflap \
>>    --disable-libssp \
>>    --disable-libquadmath \
>>    --disable-libgomp \
>>    --enable-nls \
>>    --disable-tm-clone-registry \
>>    --src=`pwd`/../ \
>>    --with-abi=lp64d \
>>    --with-arch=rv64gcv \
>>    --with-tune=rocket \
>>    --with-isa-spec=20191213 \
>>    CFLAGS_FOR_BUILD="-O0 -g" \
>>    CXXFLAGS_FOR_BUILD="-O0 -g" \
>>    CFLAGS_FOR_TARGET="-O0  -g" \
>>    CXXFLAGS_FOR_TARGET="-O0 -g" \
>>    BOOT_CFLAGS="-O0 -g" \
>>    CFLAGS="-O0 -g" \
>>    CXXFLAGS="-O0 -g" \
>>    GM2FLAGS_FOR_TARGET="-O0 -g" \
>>    GOCFLAGS_FOR_TARGET="-O0 -g" \
>>    GDCFLAGS_FOR_TARGET="-O0 -g"
>> make -j $(nproc) all-gcc && make install-gcc
>> 3. ../__RISC-V_INSTALL___RV64/bin/riscv64-unknown-elf-gcc gcc/testsuite/gcc.dg/graphite/pr111878.c -O3 -fgraphite-identity -fsave-optimization-record -march=rv64gcv -mabi=lp64d -c -S -o -
>>
>> Pan
>>
>> -----Original Message-----
>> From: Li, Pan2
>> Sent: Tuesday, April 23, 2024 10:32 AM
>> To: Patrick O'Neill <patrick@rivosinc.com>; gcc-patches@gcc.gnu.org
>> Cc: juzhe.zhong@rivai.ai; kito.cheng@gmail.com; rdapp.gcc@gmail.com
>> Subject: RE: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1
>>
>> Thanks Patrick.
>>
>> Turn out that the make report cannot tell the error like below and then the graphite.exp test will never run.
>> That explains why I missed test failures, will take care of it ASAP.
>>
>> sorry, unimplemented: Graphite loop optimizations cannot be used (isl is not available)
>>
>> Pan
>>
>> -----Original Message-----
>> From: Patrick O'Neill <patrick@rivosinc.com>
>> Sent: Tuesday, April 23, 2024 8:32 AM
>> To: Li, Pan2 <pan2.li@intel.com>; gcc-patches@gcc.gnu.org
>> Cc: juzhe.zhong@rivai.ai; kito.cheng@gmail.com; rdapp.gcc@gmail.com
>> Subject: Re: [PATCH v1] RISC-V: Adjust overlap attr after revert d3544cea63d and e65aaf8efe1
>>
>> This patch in particular does not cause any more regressions. It's one
>> of the other reverts from the weekend.
>>
>> Before the reverts [1]:
>>                                               |          gcc |
>> g++ |     gfortran |
>>       rv64gcv/  lp64d/ medlow |   48/    32 |     12/    3|   12 /    2
>>
>> After the reverts:
>>                                               |          gcc |
>> g++ |     gfortran |
>>       rv64gcv/  lp64d/ medlow |   50 /    33 |   12 /     3 |   26 /     7 |
>>
>>
>> gcc new fails:
>> FAIL: gcc.dg/graphite/pr111878.c (internal compiler error: in
>> extract_insn, at recog.cc:2812)
>> FAIL: gcc.dg/graphite/pr111878.c (test for excess errors)
>>
>> gfortran new fails:
>> FAIL: gfortran.dg/graphite/id-27.f90   -O  (internal compiler error: in
>> extract_insn, at recog.cc:2812)
>> FAIL: gfortran.dg/graphite/id-27.f90   -O  (test for excess errors)
>> FAIL: gfortran.dg/graphite/pr14741.f90   -O  (internal compiler error:
>> in extract_insn, at recog.cc:2812)
>> FAIL: gfortran.dg/graphite/pr14741.f90   -O  (test for excess errors)
>> FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer
>> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal
>> compiler error: in extract_insn, at recog.cc:2812)
>> FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -fomit-frame-pointer
>> -funroll-loops -fpeel-loops -ftracer -finline-functions  (test for
>> excess errors)
>> FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (internal compiler
>> error: in extract_insn, at recog.cc:2812)
>> FAIL: gfortran.dg/graphite/pr29581.f90   -O3 -g  (test for excess errors)
>> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer
>> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal
>> compiler error: in extract_insn, at recog.cc:2812)
>> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer
>> -funroll-loops -fpeel-loops -ftracer -finline-functions  (test for
>> excess errors)
>> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (internal compiler
>> error: in extract_insn, at recog.cc:2812)
>> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -g  (test for excess errors)
>> FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (internal compiler
>> error: in extract_insn, at recog.cc:2812)
>> FAIL: gfortran.dg/graphite/vect-pr40979.f90   -O  (test for excess errors)
>>
>>
>> For future reference, the precommit does not do well with many unrelated
>> patches that are dependent on eachother.
>> In the future sending these as a series would allow precommit to
>> properly test them (as always you can see the testing results on
>> patchworks).
>>
>> Thanks,
>> Patrick
>>
>> [1] https://github.com/patrick-rivos/gcc-postcommit-ci/issues/801
>>
>> On 4/22/24 12:55, Patrick O'Neill wrote:
>>> Hi Pan,
>>>
>>> I was running the testsuite for this and noticed an ICE scroll by when
>>> this patch is applied to cacc55a4c0be8d0bc7417b6a28924eadbbe428e3 for
>>> rv64gcv:
>>>
>>> FAIL: gfortran.dg/graphite/pr29832.f90   -O3 -fomit-frame-pointer
>>> -funroll-loops -fpeel-loops -ftracer -finline-functions  (internal
>>> compiler error: in extract_insn, at recog.cc:2812)
>>>
>>> I'll send the full list of new failures once the runs finish.
>>>
>>> Thanks,
>>> Patrick
>>>
>>> On 4/22/24 06:47, pan2.li@intel.com wrote:
>>>> From: Pan Li <pan2.li@intel.com>
>>>>
>>>> After we reverted below 2 commits, the reference to attr need some
>>>> adjustment as the group_overlap is no longer available.
>>>>
>>>> * RISC-V: Robostify the W43, W86, W87 constraint enabled attribute
>>>> * RISC-V: Rename vconstraint into group_overlap
>>>>
>>>> The below tests are passed for this patch.
>>>>
>>>> * The rv64gcv fully regression tests.
>>>>
>>>> gcc/ChangeLog:
>>>>
>>>>      * config/riscv/vector-crypto.md:
>>>>
>>>> Signed-off-by: Pan Li <pan2.li@intel.com>
>>>> ---
>>>>    gcc/config/riscv/vector-crypto.md | 2 +-
>>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/gcc/config/riscv/vector-crypto.md
>>>> b/gcc/config/riscv/vector-crypto.md
>>>> index 519c6a10d94..23dc549e5b8 100755
>>>> --- a/gcc/config/riscv/vector-crypto.md
>>>> +++ b/gcc/config/riscv/vector-crypto.md
>>>> @@ -322,7 +322,7 @@ (define_insn "@pred_vwsll<mode>_scalar"
>>>>      "vwsll.v%o4\t%0,%3,%4%p1"
>>>>      [(set_attr "type" "vwsll")
>>>>       (set_attr "mode" "<V_DOUBLE_TRUNC>")
>>>> -   (set_attr "group_overlap"
>>>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
>>>> +   (set_attr "vconstraint"
>>>> "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
>>>>      ;; vbrev.v vbrev8.v vrev8.v
>>>>    (define_insn "@pred_v<rev><mode>"
diff mbox series

Patch

diff --git a/gcc/config/riscv/vector-crypto.md b/gcc/config/riscv/vector-crypto.md
index 519c6a10d94..23dc549e5b8 100755
--- a/gcc/config/riscv/vector-crypto.md
+++ b/gcc/config/riscv/vector-crypto.md
@@ -322,7 +322,7 @@  (define_insn "@pred_vwsll<mode>_scalar"
   "vwsll.v%o4\t%0,%3,%4%p1"
   [(set_attr "type" "vwsll")
    (set_attr "mode" "<V_DOUBLE_TRUNC>")
-   (set_attr "group_overlap" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,none,none")])
+   (set_attr "vconstraint" "W21,W21,W21,W21,W42,W42,W42,W42,W84,W84,W84,W84,no,no")])
 
 ;; vbrev.v vbrev8.v vrev8.v
 (define_insn "@pred_v<rev><mode>"