[PATCH 1/2] arc: Add commutative multiplication patterns.

2025-03-18 Thread Luis Silva
: Luis Silva --- gcc/config/arc/arc.cc| 7 +++ gcc/config/arc/arc.md| 34 ++-- gcc/testsuite/gcc.target/arc/mult-cmp0.c | 66 3 files changed, 103 insertions(+), 4 deletions(-) create mode 100644 gcc/testsuite/gcc.target/arc

[PATCH 2/2] arc: Use intrinsics for __builtin_mul_overflow ()

2025-03-18 Thread Luis Silva
t;1" to "r0" in case of overflow: mov_s r0,1 mpy.f r0,r0,r1 j_s.d [blink] mov.nv r0,0 gcc/ChangeLog: * config/arc/arc.md (mulvsi4): New define_expand. (mulsi3_Vcmp): New define_insn. Signed-off-by: Luis Silva -

[PATCH] arc: testsuite: Scan "rlc" instead of "mov.hs".

2025-03-18 Thread Luis Silva
`rlc` instruction as the new behavior. gcc/testsuite/ChangeLog: * gcc.target/arc/overflow-1.c: Replace mov.hs with rlc. Signed-off-by: Luis Silva --- gcc/testsuite/gcc.target/arc/overflow-1.c | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gcc/testsuite

[PATCH] ARC: Update gcc.target/arc/pr9001184797.c test

2024-07-03 Thread Luis Silva
changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9aeec32f9e6..bd825881b75 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2024-07-03 Luis Silva + + * gcc.target/arc/pr9001184797.c: (Fix