[gcc13,backport,12/12] riscv: fix error: control reaches end of non-void function

Message ID 20230725180206.284777-13-patrick@rivosinc.com
State Unresolved
Headers
Series RISC-V: Implement ISA Manual Table A.6 Mappings |

Checks

Context Check Description
snail/gcc-patch-check warning Git am fail log

Commit Message

Patrick O'Neill July 25, 2023, 6:02 p.m. UTC
  From: Martin Liska <mliska@suse.cz>

Fixes:
gcc/config/riscv/sync.md:66:1: error: control reaches end of non-void function [-Werror=return-type]
66 |   [(set (attr "length") (const_int 4))])
   | ^

	PR target/109713

gcc/ChangeLog:

	* config/riscv/sync.md: Add gcc_unreachable to a switch.
---
 gcc/config/riscv/sync.md | 2 ++
 1 file changed, 2 insertions(+)
  

Comments

Kito Cheng July 26, 2023, 1:22 a.m. UTC | #1
OK for backport :)

On Wed, Jul 26, 2023 at 2:11 AM Patrick O'Neill <patrick@rivosinc.com> wrote:
>
> From: Martin Liska <mliska@suse.cz>
>
> Fixes:
> gcc/config/riscv/sync.md:66:1: error: control reaches end of non-void function [-Werror=return-type]
> 66 |   [(set (attr "length") (const_int 4))])
>    | ^
>
>         PR target/109713
>
> gcc/ChangeLog:
>
>         * config/riscv/sync.md: Add gcc_unreachable to a switch.
> ---
>  gcc/config/riscv/sync.md | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/gcc/config/riscv/sync.md b/gcc/config/riscv/sync.md
> index 6e7c762ac57..9fc626267de 100644
> --- a/gcc/config/riscv/sync.md
> +++ b/gcc/config/riscv/sync.md
> @@ -62,6 +62,8 @@
>         return "fence\tr,rw";
>      else if (model == MEMMODEL_RELEASE)
>         return "fence\trw,w";
> +    else
> +       gcc_unreachable ();
>    }
>    [(set (attr "length") (const_int 4))])
>
> --
> 2.34.1
>
  
Patrick O'Neill July 26, 2023, 5:41 p.m. UTC | #2
This final patch fixes an error introduced by patch 9/12 in this series.
I'll backport alongside the other patches once the 13 branch is unfrozen :)

On 7/25/23 18:22, Kito Cheng wrote:
> OK for backport :)
>
> On Wed, Jul 26, 2023 at 2:11 AM Patrick O'Neill <patrick@rivosinc.com> wrote:
>> From: Martin Liska <mliska@suse.cz>
>>
>> Fixes:
>> gcc/config/riscv/sync.md:66:1: error: control reaches end of non-void function [-Werror=return-type]
>> 66 |   [(set (attr "length") (const_int 4))])
>>     | ^
>>
>>          PR target/109713
>>
>> gcc/ChangeLog:
>>
>>          * config/riscv/sync.md: Add gcc_unreachable to a switch.
>> ---
>>   gcc/config/riscv/sync.md | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/gcc/config/riscv/sync.md b/gcc/config/riscv/sync.md
>> index 6e7c762ac57..9fc626267de 100644
>> --- a/gcc/config/riscv/sync.md
>> +++ b/gcc/config/riscv/sync.md
>> @@ -62,6 +62,8 @@
>>          return "fence\tr,rw";
>>       else if (model == MEMMODEL_RELEASE)
>>          return "fence\trw,w";
>> +    else
>> +       gcc_unreachable ();
>>     }
>>     [(set (attr "length") (const_int 4))])
>>
>> --
>> 2.34.1
>>
  

Patch

diff --git a/gcc/config/riscv/sync.md b/gcc/config/riscv/sync.md
index 6e7c762ac57..9fc626267de 100644
--- a/gcc/config/riscv/sync.md
+++ b/gcc/config/riscv/sync.md
@@ -62,6 +62,8 @@ 
 	return "fence\tr,rw";
     else if (model == MEMMODEL_RELEASE)
 	return "fence\trw,w";
+    else
+	gcc_unreachable ();
   }
   [(set (attr "length") (const_int 4))])