[gcc r14-9480] gcc: xtensa: reorder movsi_internal patterns for better code generation during LRA

2024-03-14 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:bc5a9dab55d13f888a3cdd150c8cf5c2244f35e0 commit r14-9480-gbc5a9dab55d13f888a3cdd150c8cf5c2244f35e0 Author: Max Filippov Date: Thu Mar 14 04:20:36 2024 -0700 gcc: xtensa: reorder movsi_internal patterns for better code generation during LRA After switching to

[gcc r14-9638] xtensa: Add supplementary split pattern for "*addsubx"

2024-03-22 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:7a01cc711f33530436712a5bfd18f8457a68ea1f commit r14-9638-g7a01cc711f33530436712a5bfd18f8457a68ea1f Author: Takayuki 'January June' Suwa Date: Fri Mar 22 08:36:30 2024 +0900 xtensa: Add supplementary split pattern for "*addsubx" int test(int a) { return

[gcc r14-9655] libgcc: arm: fix build for FDPIC target

2024-03-25 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:c2e68ff9edd5da7a55ba6574b4ce49ce6495b18d commit r14-9655-gc2e68ff9edd5da7a55ba6574b4ce49ce6495b18d Author: Max Filippov Date: Fri Mar 22 13:03:46 2024 -0700 libgcc: arm: fix build for FDPIC target libgcc/ * unwind-arm-common.inc (__gnu_personality

[gcc r15-2385] gcc: xtensa: disable late-combine by default

2024-07-29 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:9d5d6e61500411ea9043258e300d5b0f57e5c391 commit r15-2385-g9d5d6e61500411ea9043258e300d5b0f57e5c391 Author: Max Filippov Date: Fri Jul 19 17:27:03 2024 -0700 gcc: xtensa: disable late-combine by default gcc/ * config/xtensa/xtensa.cc (xtensa_option

[gcc r15-2391] xtensa: Make use of std::swap where appropriate

2024-07-29 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:56c4979dd8be40681f2724861fc41ae6135e1e78 commit r15-2391-g56c4979dd8be40681f2724861fc41ae6135e1e78 Author: Takayuki 'January June' Suwa Date: Sun Jul 14 20:03:13 2024 +0900 xtensa: Make use of std::swap where appropriate No functional changes. gcc/Ch

[gcc r15-2392] xtensa: Make use of scaled [U]FLOAT/TRUNC.S instructions

2024-07-29 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:f9c7775f58798a051b57356ad321b758a2ee837d commit r15-2392-gf9c7775f58798a051b57356ad321b758a2ee837d Author: Takayuki 'January June' Suwa Date: Sun Jul 14 20:04:15 2024 +0900 xtensa: Make use of scaled [U]FLOAT/TRUNC.S instructions [U]FLOAT.S machine instructio

[gcc r15-2396] xtensa: Fix the regression introduce by r15-959-gbe9b3f4375e7

2024-07-29 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:8ebb1d79ea16f37214c33d853061d3c9cf5e7f46 commit r15-2396-g8ebb1d79ea16f37214c33d853061d3c9cf5e7f46 Author: Takayuki 'January June' Suwa Date: Sat Jul 20 05:35:33 2024 +0900 xtensa: Fix the regression introduce by r15-959-gbe9b3f4375e7 It is not wrong but also

[gcc r15-2397] xtensa: Fix suboptimal loading of pooled constant value into hardware single-precision FP register

2024-07-29 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:fb7b82964f54192d0723a45c0657d2eb7c5ac97c commit r15-2397-gfb7b82964f54192d0723a45c0657d2eb7c5ac97c Author: Takayuki 'January June' Suwa Date: Tue Jul 23 16:03:12 2024 +0900 xtensa: Fix suboptimal loading of pooled constant value into hardware single-precision FP regi

[gcc r15-2398] xtensa: Add missing speed cost for TYPE_FARITH in TARGET_INSN_COST

2024-07-29 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:c1d35de0d94d43b9976aff44001dadd4dd42b7ae commit r15-2398-gc1d35de0d94d43b9976aff44001dadd4dd42b7ae Author: Takayuki 'January June' Suwa Date: Wed Jul 24 06:07:06 2024 +0900 xtensa: Add missing speed cost for TYPE_FARITH in TARGET_INSN_COST According to the im

[gcc r15-935] xtensa: Use REG_P(), MEM_P(), etc. instead of comparing GET_CODE()

2024-05-30 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:1e091097b1b42fed562a6d80a6e08603d1c648a2 commit r15-935-g1e091097b1b42fed562a6d80a6e08603d1c648a2 Author: Takayuki 'January June' Suwa Date: Thu May 30 22:32:24 2024 +0900 xtensa: Use REG_P(), MEM_P(), etc. instead of comparing GET_CODE() Instead of comparing

[gcc r15-936] xtensa: Use epilogue_completed rather than cfun->machine->epilogue_done

2024-05-30 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:1b58f46ba2079b327580ffa1720c0b40ab3db74d commit r15-936-g1b58f46ba2079b327580ffa1720c0b40ab3db74d Author: Takayuki 'January June' Suwa Date: Thu May 30 22:32:24 2024 +0900 xtensa: Use epilogue_completed rather than cfun->machine->epilogue_done In commit ad89d

[gcc r15-958] xtensa: Simplify several MD templates

2024-05-31 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:68cda24d3ac12292a599ff8f9b58fdbc95baba4e commit r15-958-g68cda24d3ac12292a599ff8f9b58fdbc95baba4e Author: Takayuki 'January June' Suwa Date: Fri May 31 19:23:13 2024 +0900 xtensa: Simplify several MD templates No functional changes. gcc/ChangeLog:

[gcc r15-959] xtensa: Prepend "(use A0_REG)" to sibling call CALL_INSN_FUNCTION_USAGE instead of emitting it as in

2024-05-31 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:be9b3f4375e74b6f10dd15fc563c93f803e91db5 commit r15-959-gbe9b3f4375e74b6f10dd15fc563c93f803e91db5 Author: Takayuki 'January June' Suwa Date: Fri May 31 19:24:48 2024 +0900 xtensa: Prepend "(use A0_REG)" to sibling call CALL_INSN_FUNCTION_USAGE instead of emitting it

[gcc r15-1433] xtensa: constantsynth: Reforge to fix some non-fatal issues

2024-06-19 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:23141088e8fb50bf916ac0b2e364b1eef9f3569d commit r15-1433-g23141088e8fb50bf916ac0b2e364b1eef9f3569d Author: Takayuki 'January June' Suwa Date: Wed Jun 19 11:55:57 2024 +0900 xtensa: constantsynth: Reforge to fix some non-fatal issues The previous constant synt

[gcc r15-1453] xtensa: Eliminate double MEMW insertions for volatile memory

2024-06-19 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:0982552bc4eeffb5520deba10dedecfb2390a8de commit r15-1453-g0982552bc4eeffb5520deba10dedecfb2390a8de Author: Takayuki 'January June' Suwa Date: Wed Jun 19 13:59:54 2024 +0900 xtensa: Eliminate double MEMW insertions for volatile memory This patch makes avoid in

[gcc r15-4706] xtensa: Define TARGET_DIFFERENT_ADDR_DISPLACEMENT_P target hook

2024-10-27 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:211459e12147e9ed42c0a0947b1b95b551e03ef3 commit r15-4706-g211459e12147e9ed42c0a0947b1b95b551e03ef3 Author: Takayuki 'January June' Suwa Date: Wed Oct 23 11:31:15 2024 +0900 xtensa: Define TARGET_DIFFERENT_ADDR_DISPLACEMENT_P target hook In commit bc5a9dab55d1

[gcc r15-5074] xtensa: Fix the issue in "*extzvsi-1bit_addsubx"

2024-11-10 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:b433140a6cb40acedb2e6cb43c4e5a388e33f805 commit r15-5074-gb433140a6cb40acedb2e6cb43c4e5a388e33f805 Author: Takayuki 'January June' Suwa Date: Sun Nov 10 15:39:22 2024 +0900 xtensa: Fix the issue in "*extzvsi-1bit_addsubx" The second source register of insn "*

[gcc r16-529] xtensa: Fix up unwanted spills of SFmode hard registers holding function arguments/returns

2025-05-11 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:6d73d75a7c04caf3457297400372f87765b9a653 commit r16-529-g6d73d75a7c04caf3457297400372f87765b9a653 Author: Takayuki 'January June' Suwa Date: Sun May 11 04:51:11 2025 +0900 xtensa: Fix up unwanted spills of SFmode hard registers holding function arguments/returns

[gcc r16-2110] xtensa: Fix B[GE/LT]UI instructions with immediate values of 32768 or 65536 not being emitted

2025-07-08 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:57da36bed1004d2b78057568176b76cb0a50d149 commit r16-2110-g57da36bed1004d2b78057568176b76cb0a50d149 Author: Takayuki 'January June' Suwa Date: Mon Jul 7 23:40:17 2025 +0900 xtensa: Fix B[GE/LT]UI instructions with immediate values of 32768 or 65536 not being emitted

[gcc r16-2069] xtensa: Remove TARGET_PROMOTE_PROTOTYPES

2025-07-07 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:2a6ac385076a0d43a529e84e7f7ebcbfc3831437 commit r16-2069-g2a6ac385076a0d43a529e84e7f7ebcbfc3831437 Author: H.J. Lu Date: Tue Jul 1 04:46:31 2025 +0800 xtensa: Remove TARGET_PROMOTE_PROTOTYPES xtensa ABI requires sign extension of signed 8/16-bit arguments to

[gcc r16-1031] xtensa: Implement TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS

2025-05-31 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:9050005673b68f5267a4c8262363b547555337a0 commit r16-1031-g9050005673b68f5267a4c8262363b547555337a0 Author: Takayuki 'January June' Suwa Date: Tue May 27 15:57:26 2025 +0900 xtensa: Implement TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS Implement TARGET_IRA_CHANGE_P

[gcc r16-1032] xtensa: Remove an unnecessary constraint modifier from movsf_internal insn pattern

2025-05-31 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:2e5130f6870bdb016f58f42f2ff99a2226e93af6 commit r16-1032-g2e5130f6870bdb016f58f42f2ff99a2226e93af6 Author: Takayuki 'January June' Suwa Date: Tue May 27 15:58:35 2025 +0900 xtensa: Remove an unnecessary constraint modifier from movsf_internal insn pattern In

[gcc r16-1033] xtensa: Remove include of reload.h

2025-05-31 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:2e1f0142708e29bf0f19ef76c9dded913081a0ef commit r16-1033-g2e1f0142708e29bf0f19ef76c9dded913081a0ef Author: Takayuki 'January June' Suwa Date: Tue May 27 15:59:21 2025 +0900 xtensa: Remove include of reload.h As one of the last steps in removing old reload.

[gcc r16-1518] xtensa: Revert "xtensa: Eliminate unnecessary general-purpose reg-reg moves"

2025-06-15 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:f4ebc9b7b1a1f3270eafe649c559dedc94e0553d commit r16-1518-gf4ebc9b7b1a1f3270eafe649c559dedc94e0553d Author: Takayuki 'January June' Suwa Date: Sat Jun 14 20:30:55 2025 +0900 xtensa: Revert "xtensa: Eliminate unnecessary general-purpose reg-reg moves" Due to im

[gcc r16-1519] xtensa: Revert "xtensa: Eliminate unwanted reg-reg moves during DFmode input reloads"

2025-06-15 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:14454881497004b365d3b8412b4709109b77857f commit r16-1519-g14454881497004b365d3b8412b4709109b77857f Author: Takayuki 'January June' Suwa Date: Sun Jun 15 18:00:50 2025 +0900 xtensa: Revert "xtensa: Eliminate unwanted reg-reg moves during DFmode input reloads"

[gcc r16-1612] xtensa: Make use of DEPBITS instruction

2025-06-22 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:b0419798447ae25de2f58d1a695db6dadb5d8547 commit r16-1612-gb0419798447ae25de2f58d1a695db6dadb5d8547 Author: Takayuki 'January June' Suwa Date: Tue Jun 17 15:56:52 2025 +0900 xtensa: Make use of DEPBITS instruction This patch implements bitfield insertion MD pa

[gcc r16-1611] xtensa: Implement TARGET_ZERO_CALL_USED_REGS

2025-06-22 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:00e551bfbd4023047a42ccb022a35707b8ef42e6 commit r16-1611-g00e551bfbd4023047a42ccb022a35707b8ef42e6 Author: Takayuki 'January June' Suwa Date: Mon Jun 16 22:33:36 2025 +0900 xtensa: Implement TARGET_ZERO_CALL_USED_REGS This patch implements the target-specific

[gcc r16-1280] xtensa: Implement l(ceil|floor)sfsi2 insn patterns and their scaled variants

2025-06-08 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:5f3b5b0616fe883e86e95d9476371cf87059ca7f commit r16-1280-g5f3b5b0616fe883e86e95d9476371cf87059ca7f Author: Takayuki 'January June' Suwa Date: Sun Jun 8 14:05:05 2025 +0900 xtensa: Implement l(ceil|floor)sfsi2 insn patterns and their scaled variants By using t

[gcc r16-2427] xtensa: Make relaxed MOVI instructions treated as "load" type

2025-07-22 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:b1e8f118e962cbd08ab6037c05a1045df90585c5 commit r16-2427-gb1e8f118e962cbd08ab6037c05a1045df90585c5 Author: Takayuki 'January June' Suwa Date: Wed Jul 16 17:03:26 2025 +0900 xtensa: Make relaxed MOVI instructions treated as "load" type The relaxed MOVI instruc

[gcc r16-2428] xtensa: Fix inaccuracy in xtensa_rtx_costs()

2025-07-22 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:bb561b45e490377046b7ce14e8934cc8a81ec6a7 commit r16-2428-gbb561b45e490377046b7ce14e8934cc8a81ec6a7 Author: Takayuki 'January June' Suwa Date: Wed Jul 16 17:12:03 2025 +0900 xtensa: Fix inaccuracy in xtensa_rtx_costs() This patch fixes the following defects in

[gcc r16-2570] xtensa: Fix remaining inaccuracies in xtensa_is_insn_L32R_p()

2025-07-27 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:7b313f53590ab6c404943a6487769540c1654d7b commit r16-2570-g7b313f53590ab6c404943a6487769540c1654d7b Author: Takayuki 'January June' Suwa Date: Fri Jul 25 10:40:42 2025 +0900 xtensa: Fix remaining inaccuracies in xtensa_is_insn_L32R_p() The previous fix also ha

[gcc r16-530] testsuite: xtensa: add support for effective_target_sync_*

2025-05-11 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:aa0d25683bb5c7f2256d9e897fe471f0de84ea9b commit r16-530-gaa0d25683bb5c7f2256d9e897fe471f0de84ea9b Author: Max Filippov Date: Sun Apr 27 18:05:20 2025 -0700 testsuite: xtensa: add support for effective_target_sync_* Add new function check_effective_target_xten

[gcc r16-3319] xtensa: Small improvement to "*btrue_INT_MIN"

2025-08-21 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:6190513486ff39f79a614bb3cd42d94b9c17714a commit r16-3319-g6190513486ff39f79a614bb3cd42d94b9c17714a Author: Takayuki 'January June' Suwa Date: Wed Aug 20 20:30:05 2025 +0900 xtensa: Small improvement to "*btrue_INT_MIN" This patch changes the implementation of

[gcc r16-3097] xtensa: Refine constraint "T" to define_special_memory_constraint

2025-08-08 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:ffc867844c989c16815580ce243296bfdcec8590 commit r16-3097-gffc867844c989c16815580ce243296bfdcec8590 Author: Takayuki 'January June' Suwa Date: Fri Aug 8 06:49:13 2025 +0900 xtensa: Refine constraint "T" to define_special_memory_constraint References to literal

[gcc r16-3482] xtensa: Optimize branch whether (reg:SI) is within/out the range handled by CLAMPS instruction

2025-08-31 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:4553eccd23d74ba9ad2f862c5e66278a21abfe49 commit r16-3482-g4553eccd23d74ba9ad2f862c5e66278a21abfe49 Author: Takayuki 'January June' Suwa Date: Fri Aug 29 19:19:32 2025 +0900 xtensa: Optimize branch whether (reg:SI) is within/out the range handled by CLAMPS instruction

[gcc r16-3371] xtensa: Simplify "*masktrue_const_bitcmpl" insn pattern

2025-08-25 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:b11ee352ca75fb33c1679d07f706b98fa6bb9ce4 commit r16-3371-gb11ee352ca75fb33c1679d07f706b98fa6bb9ce4 Author: Takayuki 'January June' Suwa Date: Mon Aug 25 06:27:43 2025 +0900 xtensa: Simplify "*masktrue_const_bitcmpl" insn pattern gcc/ChangeLog:

[gcc r16-3372] xtensa: Make use of compact insn definition syntax for insns whose have multiple alternatives

2025-08-25 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:e2533e488fe664371ef120899118e179c5c9fbe7 commit r16-3372-ge2533e488fe664371ef120899118e179c5c9fbe7 Author: Takayuki 'January June' Suwa Date: Mon Aug 25 06:30:05 2025 +0900 xtensa: Make use of compact insn definition syntax for insns whose have multiple alternatives

[gcc r16-3370] xtensa: Simplify "zero_extend[hq]isi2" insn patterns

2025-08-25 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:ee8f20d61dfaa5cf2af77e49e3ad78ccd4d98b36 commit r16-3370-gee8f20d61dfaa5cf2af77e49e3ad78ccd4d98b36 Author: Takayuki 'January June' Suwa Date: Mon Aug 25 06:26:41 2025 +0900 xtensa: Simplify "zero_extend[hq]isi2" insn patterns gcc/ChangeLog: *

[gcc r16-3464] xtensa: Rewrite bswapsi2_internal with compact syntax

2025-08-29 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:ba9d4b3ce59432f3e7cef5c650b088a12e7ff877 commit r16-3464-gba9d4b3ce59432f3e7cef5c650b088a12e7ff877 Author: Takayuki 'January June' Suwa Date: Fri Aug 29 19:55:06 2025 +0900 xtensa: Rewrite bswapsi2_internal with compact syntax Also, the omission of the instru

[gcc r16-3910] xtensa: Simplify the definition of REGNO_OK_FOR_BASE_P() and avoid calling it directly

2025-09-16 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:fe7cf719a975656f395aced8b18aa10526c8a8eb commit r16-3910-gfe7cf719a975656f395aced8b18aa10526c8a8eb Author: Takayuki 'January June' Suwa Date: Tue Sep 16 09:42:50 2025 +0900 xtensa: Simplify the definition of REGNO_OK_FOR_BASE_P() and avoid calling it directly

[gcc r16-3751] xtensa: Correct a typo

2025-09-17 Thread Max Filippov via Gcc-cvs
https://gcc.gnu.org/g:220e4d2df797c634e8975cb0a8e4598268f7bbe9 commit r16-3751-g220e4d2df797c634e8975cb0a8e4598268f7bbe9 Author: Takayuki 'January June' Suwa Date: Tue Sep 9 23:36:44 2025 +0900 xtensa: Correct a typo That was introduced in commit 42db504c2fb2b460e24ca0e73b8559fc33