Re: [v5,2/4] RISC-V: Add Zicfilp ISA extension

2025-03-13 Thread Monk Chiang
:44 PM Jin Ma wrote: > Hi, Monk Chiang > > I noticed that at -O0, static functions are emitting lpad instructions, > whereas > they do not at -O2. I'm not sure if this is expected behavior. > > Upon further investigation, I found that c_node->only_called_directly_p(

Re: [PATCH v2] RISC-V: Fix wrong LMUL when only implict zve32f.

2025-02-07 Thread Monk Chiang
Hi Robin, Thanks for your comment. I think your point is correct, especially the part about SEWmin. I will revise this patch again. On Wed, Feb 5, 2025 at 4:18 PM Robin Dapp wrote: > > Hi Robin, > > Sorry, I should have simplified the problem by presenting it in terms of > > Zve32x, because Zve3

Re: [PATCH v2] RISC-V: Fix wrong LMUL when only implict zve32f.

2025-02-04 Thread Monk Chiang
Hi Robin, Sorry, I should have simplified the problem by presenting it in terms of Zve32x, because Zve32f implies Zve32x. As the specification states, the requirement is to support LMUL ≥ SEW/ELEN. Regarding the implementation, I followed this rule to fix the problem. In this link: https://godbolt

[PATCH v2] RISC-V: Fix wrong LMUL when only implict zve32f.

2025-02-03 Thread Monk Chiang
According to Section 3.4.2, Vector Register Grouping, in the RISC-V Vector Specification, the rule for LMUL is LMUL >= SEW/ELEN gcc/ChangeLog: * config/riscv/riscv-v.cc: Add restrict for insert LMUL. config/riscv/riscv-vector-builtins-types.def: Use RVV_REQUIRE_ELEN_64 to c

[PATCH] RISC-V: Fix wrong LMUL when only implict zve32f.

2025-02-03 Thread Monk Chiang
According to Section 3.4.2, Vector Register Grouping, in the RISC-V Vector Specification, the rule for LMUL is LMUL >= SEW/ELEN --- gcc/config/riscv/riscv-v.cc | 8 +- gcc/config/riscv/riscv-vector-switch.def | 84 ++--- .../gcc.target/riscv/rvv/autovec/pr111391-2

Re: [PATCH 3/4] RISC-V: Add .note.gnu.property for ZICFILP and ZICFISS ISA extension

2025-01-17 Thread Monk Chiang
Thanks, I will fix it. > Mark Wielaard 於 2025年1月17日 晚上10:32 寫道: > > Hi Monk, > >> On Fri, Nov 15, 2024 at 06:53:09PM +0800, Monk Chiang wrote: >> gcc/ChangeLog: >>* gcc/config/riscv/riscv.cc >>(riscv_file_end_indicate_exec_stack): Add .note.gn

[PATCH v5 4/4] RISC-V: Add -fcf-protection=[full|branch|return] to enable zicfiss, zicfilp.

2025-01-16 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (is_zicfilp_p): New function. (is_zicfiss_p): New function. * gcc/config/riscv/riscv-zicfilp.cc: Update. * gcc/config/riscv/riscv.h: Update. * gcc/config/riscv/riscv.md: Update. gcc/testsuite/ChangeLog:

[PATCH v5 2/4] RISC-V: Add Zicfilp ISA extension.

2025-01-16 Thread Monk Chiang
This patch only support landing pad value is 0. The next version will implement function signature based labeling scheme. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * gcc/common/config/riscv/riscv-common.cc: Add ZICFILP ISA string. * gcc/config.gc

[PATCH v5 3/4] RISC-V: Add .note.gnu.property for ZICFILP and ZICFISS ISA extension

2025-01-16 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (riscv_file_end_indicate_exec_stack): Add .note.gnu.property. * gcc/config/riscv/linux.h (TARGET_ASM_FILE_END): Define. libgcc/ChangeLog: * libgcc/config/riscv/crti.S: Add lpad instructions. * libgcc/config/riscv/cr

[PATCH v5 1/4] RISC-V: Add Zicfiss ISA extension.

2025-01-16 Thread Monk Chiang
This patch is implemented according to the RISC-V CFI specification. It supports the generation of shadow stack instructions in the prologue, epilogue, non-local gotos, and unwinding. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * common/config/riscv/riscv-common.cc:

Re: [PATCH v2 3/4] RISC-V: Add .note.gnu.property for ZICFILP and ZICFISS ISA extension

2025-01-15 Thread Monk Chiang
cGary wrote: > >> On Mon, Jan 13, 2025 at 1:02 AM Monk Chiang >> wrote: >> >>> >>> * gcc/config/riscv/riscv.cc >>> (riscv_file_end_indicate_exec_stack): Add .note.gnu.property. >>> >>> * libgcc/config/

[PATCH v4 2/4] RISC-V: Add Zicfilp ISA extension.

2025-01-15 Thread Monk Chiang
This patch only support landing pad value is 0. The next version will implement function signature based labeling scheme. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * gcc/common/config/riscv/riscv-common.cc: Add ZICFILP ISA string. * gcc/config.gc

[PATCH v4 4/4] RISC-V: Add -fcf-protection=[full|branch|return] to enable zicfiss, zicfilp.

2025-01-15 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (is_zicfilp_p): New function. (is_zicfiss_p): New function. * gcc/config/riscv/riscv-zicfilp.cc: Update. * gcc/config/riscv/riscv.h: Update. * gcc/config/riscv/riscv.md: Update. gcc/testsuite/ChangeLog:

[PATCH v4 3/4] RISC-V: Add .note.gnu.property for ZICFILP and ZICFISS ISA extension

2025-01-15 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (riscv_file_end_indicate_exec_stack): Add .note.gnu.property. * gcc/config/riscv/linux.h (TARGET_ASM_FILE_END): Define. libgcc/ChangeLog: * libgcc/config/riscv/crti.S: Add lpad instructions. * libgcc/config/riscv/cr

[PATCH v4 1/4] RISC-V: Add Zicfiss ISA extension.

2025-01-15 Thread Monk Chiang
This patch is implemented according to the RISC-V CFI specification. It supports the generation of shadow stack instructions in the prologue, epilogue, non-local gotos, and unwinding. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * common/config/riscv/riscv-common.cc:

[PATCH v3 4/4] RISC-V: Add -fcf-protection=[full|branch|return] to enable zicfiss, zicfilp.

2025-01-14 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (is_zicfilp_p): New function. (is_zicfiss_p): New function. * gcc/config/riscv/riscv-zicfilp.cc: Update. * gcc/config/riscv/riscv.h: Update. * gcc/config/riscv/riscv.md: Update. gcc/testsuite/ChangeLog:

Re: [PATCH v3 4/4] RISC-V: Add -fcf-protection=[full|branch|return] to enable zicfiss, zicfilp.

2025-01-14 Thread Monk Chiang
Update gcc/testsuite/c-c++-common/fcf-protection-[1-7].c. On Wed, Jan 15, 2025 at 3:54 PM Monk Chiang wrote: > gcc/ChangeLog: > * gcc/config/riscv/riscv.cc > (is_zicfilp_p): New function. > (is_zicfiss_p): New function. > * gcc/config/riscv/r

[PATCH v3 3/4] RISC-V: Add .note.gnu.property for ZICFILP and ZICFISS ISA extension

2025-01-14 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (riscv_file_end_indicate_exec_stack): Add .note.gnu.property. * gcc/config/riscv/linux.h (TARGET_ASM_FILE_END): Define. libgcc/ChangeLog: * libgcc/config/riscv/crti.S: Add lpad instructions. * libgcc/config/riscv/cr

[PATCH v3 1/4] RISC-V: Add Zicfiss ISA extension.

2025-01-14 Thread Monk Chiang
This patch is implemented according to the RISC-V CFI specification. It supports the generation of shadow stack instructions in the prologue, epilogue, non-local gotos, and unwinding. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * common/config/riscv/riscv-common.cc:

[PATCH v3 2/4] RISC-V: Add Zicfilp ISA extension.

2025-01-14 Thread Monk Chiang
This patch only support landing pad value is 1. The next version will implement function signature based labeling scheme. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * gcc/common/config/riscv/riscv-common.cc: Add ZICFILP ISA string. * gcc/config.gc

[PATCH v2 3/4] RISC-V: Add .note.gnu.property for ZICFILP and ZICFISS ISA extension

2025-01-13 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (riscv_file_end_indicate_exec_stack): Add .note.gnu.property. * gcc/config/riscv/linux.h (TARGET_ASM_FILE_END): Define. libgcc/ChangeLog: * libgcc/config/riscv/crti.S: Add lpad instructions. * libgcc/config/riscv/cr

[PATCH v2 1/4] RISC-V: Add Zicfiss ISA extension.

2025-01-12 Thread Monk Chiang
This patch is implemented according to the RISC-V CFI specification. It supports the generation of shadow stack instructions in the prologue, epilogue, non-local gotos, and unwinding. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * common/config/riscv/riscv-common.cc:

[PATCH v2 4/4] RISC-V: Add -fcf-protection=[full|branch|return] to enable zicfiss, zicfilp.

2025-01-12 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (is_zicfilp_p): New function. (is_zicfiss_p): New function. * gcc/config/riscv/riscv-zicfilp.cc: Update. * gcc/config/riscv/riscv.h: Update. * gcc/config/riscv/riscv.md: Update. gcc/testsuite/ChangeLog:

[PATCH v2 2/4] RISC-V: Add Zicfilp ISA extension.

2025-01-12 Thread Monk Chiang
This patch only support landing pad value is 1. The next version will implement function signature based labeling scheme. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * gcc/common/config/riscv/riscv-common.cc: Add ZICFILP ISA string. * gcc/config.gc

[PATCH 3/4] RISC-V: Add .note.gnu.property for ZICFILP and ZICFISS ISA extension

2024-11-15 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (riscv_file_end_indicate_exec_stack): Add .note.gnu.property. * gcc/config/riscv/linux.h (TARGET_ASM_FILE_END): Define. libgcc/ChangeLog: * libgcc/config/riscv/crti.S: Add lpad instructions. * libgcc/config/riscv/cr

[PATCH 4/4] RISC-V: Add -fcf-protection=[full|branch|return] to enable zicfiss, zicfilp.

2024-11-15 Thread Monk Chiang
gcc/ChangeLog: * gcc/config/riscv/riscv.cc (is_zicfilp_p): New function. (is_zicfiss_p): New function. * gcc/config/riscv/riscv-zicfilp.cc: Update. * gcc/config/riscv/riscv.h: Update. * gcc/config/riscv/riscv.md: Update. --- gcc/config/riscv/risc

[PATCH 2/4] RISC-V: Add Zicfilp ISA extension.

2024-11-15 Thread Monk Chiang
This patch only support landing pad value is 1. The next version will implement function signature based labeling scheme. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * gcc/common/config/riscv/riscv-common.cc: Add ZICFILP ISA string. * gcc/config.gc

[PATCH 1/4] RISC-V: Add Zicfiss ISA extension.

2024-11-15 Thread Monk Chiang
This patch is implemented according to the RISC-V CFI specification. It supports the generation of shadow stack instructions in the prologue, epilogue, non-local gotos, and unwinding. RISC-V CFI SPEC: https://github.com/riscv/riscv-cfi gcc/ChangeLog: * common/config/riscv/riscv-common.cc:

[committed] RISC-V: Implement locality for __builtin_prefetch

2024-07-14 Thread Monk Chiang
The patch add the Zihintntl instructions in the prefetch pattern. Zicbop has prefetch instructions. Zihintntl has NTL instructions. Insert NTL instructions before prefetch instruction, if target has Zihintntl extension. gcc/ChangeLog: * config/riscv/riscv.cc (riscv_print_operand): Add 'L'

[PATCH] RISC-V: Implement locality for __builtin_prefetch

2024-07-12 Thread Monk Chiang
The patch add the Zihintntl instructions in the prefetch pattern. Zicbop has prefetch instructions. Zihintntl has NTL instructions. Insert NTL instructions before prefetch instruction, if target has Zihintntl extension. gcc/ChangeLog: * config/riscv/riscv.cc (riscv_print_operand): Add 'L'

[committed] Add myself to write after approval

2024-02-22 Thread Monk Chiang
Dehao Chen Fabien Ch??ne +Monk Chiang Cl??ment Chigot Harshit Chopra Tamar

Re: [PATCH] RISC-V: Set require-effective-target rv64 for PR113742

2024-02-20 Thread Monk Chiang
Hi Edwin, I think just replace to: /* { dg-options "-O2 -finstrument-functions -mabi=lp64d -march=rv64gc -mtune=sifive-p600-series" } */ On Thu, Feb 15, 2024 at 7:43 PM Robin Dapp wrote: > > Ah oops I glanced over the /* { dg-do compile } */part. It should be > > fine to add '-march=rv64gc' inst

Re: [PATCH] RISC-V: Fix macro fusion for auipc+add, when identifying UNSPEC_AUIPC. [PR113742]

2024-02-13 Thread Monk Chiang
Hi Jeff, I don't have permission to commit, can you push it for me? If you look good to you. > Jeff Law 於 2024年2月14日 凌晨12:03 寫道: > >  > >> On 2/4/24 20:20, Monk Chiang wrote: >> gcc/ChangeLog: >> PR target/113742 >> * config/riscv/

Re: [PATCH] RISC-V: Fix macro fusion for auipc+add, when identifying UNSPEC_AUIPC. [PR113742]

2024-02-13 Thread Monk Chiang
Hi Jeff, I don't have permission to commit, can you push it for me? If you look good to you. > Jeff Law 於 2024年2月14日 凌晨12:03 寫道: > >  > >> On 2/4/24 20:20, Monk Chiang wrote: >> gcc/ChangeLog: >>PR target/113742 >>* config/riscv/

Re: [PATCH] RISC-V: Fix macro fusion for auipc+add, when identifying UNSPEC_AUIPC. [PR113742]

2024-02-04 Thread Monk Chiang
Yes, this test needs "--enable-checking=rtl" build. On Mon, Feb 5, 2024 at 11:28 AM Jeff Law wrote: > > > On 2/4/24 20:20, Monk Chiang wrote: > > gcc/ChangeLog: > > > > PR target/113742 > > * config/riscv/riscv.cc (riscv_macro_fusion_pai

[PATCH] RISC-V: Fix macro fusion for auipc+add, when identifying UNSPEC_AUIPC. [PR113742]

2024-02-04 Thread Monk Chiang
gcc/ChangeLog: PR target/113742 * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Fix recognizes UNSPEC_AUIPC for RISCV_FUSE_LUI_ADDI. gcc/testsuite/ChangeLog: * gcc.target/riscv/pr113742.c: New test. --- gcc/config/riscv/riscv.cc | 2 +- gcc/t

[PATCH 2/2] RISC-V: Add sifive-p450, sifive-p67 to -mcpu

2024-02-01 Thread Monk Chiang
gcc/ChangeLog: * config/riscv/riscv-cores.def: Add sifive-p450, sifive-p670. * doc/invoke.texi (RISC-V Options): Add sifive-p450, sifive-p670. gcc/testsuite/ChangeLog: * gcc.target/riscv/mcpu-sifive-p450.c: New test. * gcc.target/riscv/mcpu-sifive-p670.c:

[PATCH 1/2] RISC-V: Support scheduling for sifive p400 series

2024-02-01 Thread Monk Chiang
Add sifive p400 series scheduler module. For more information see https://www.sifive.com/cores/performance-p450-470. gcc/ChangeLog: * config/riscv/riscv.md: Include sifive-p400.md. * config/riscv/sifive-p400.md: New file. * config/riscv/riscv-cores.def (RISCV_TUNE): Add pa

[PATCH v2] RISC-V: Add minimal support for 7 new unprivileged extensions

2024-02-01 Thread Monk Chiang
The RISC-V Profiles specification here: https://github.com/riscv/riscv-profiles/blob/main/profiles.adoc#7-new-isa-extensions These extensions don't add any new features but describe existing features. So this patch only adds parsing. Za64rs: Reservation set size of 64 bytes Za128rs: Reservation s

[PATCH] RISC-V: Add minimal support for 7 new unprivileged extensions

2024-02-01 Thread Monk Chiang
The RISC-V Profiles specification here: https://github.com/riscv/riscv-profiles/blob/main/profiles.adoc#7-new-isa-extensions These extensions don't add any new features but describe existing features. So this patch only adds parsing. Za64rs: Reservation set size of 64 bytes Za128rs: Reservation s

Re: [PATCH v2] RISC-V: Support scheduling for sifive p600 series

2024-02-01 Thread Monk Chiang
Hi Juzhe, The vector part is complicated, I will add it last. On Thu, Feb 1, 2024 at 11:08 AM juzhe.zh...@rivai.ai wrote: > Hi, Monk. > > This model doesn't include vector. Will you add vector pipeline in the > followup patches ? > > -- > juzhe.zh...@rivai.ai >

[PATCH v2] RISC-V: Support scheduling for sifive p600 series

2024-01-31 Thread Monk Chiang
Add sifive p600 series scheduler module. For more information see https://www.sifive.com/cores/performance-p650-670. Add sifive-p650, sifive-p670 for mcpu option will come in separate patches. gcc/ChangeLog: * config/riscv/riscv.md: Add "fcvt_i2f", "fcvt_f2i" type attribute, and in

Re: [PATCH] RISC-V: Support scheduling for sifive p600 series

2024-01-31 Thread Monk Chiang
tly committed changes modifying the scheduling reservations. Some > things may need to be retested with the newly enabled asserts. > > Edwin > > On 1/31/2024 1:40 AM, Monk Chiang wrote: > > Add sifive p600 series scheduler module. For more information > > see https://ww

[PATCH] RISC-V: Support scheduling for sifive p600 series

2024-01-31 Thread Monk Chiang
Add sifive p600 series scheduler module. For more information see https://www.sifive.com/cores/performance-p650-670. Add sifive-p650, sifive-p670 for mcpu option will come in separate patches. gcc/ChangeLog: * config/riscv/riscv.md: Add "fcvt_i2f", "fcvt_f2i" type attribute, and in

[PATCH v3] RISC-V: Add split pattern to generate SFB instructions. [PR113095]

2024-01-24 Thread Monk Chiang
Since the match.pd transforms (zero_one == 0) ? y : z y, into ((typeof(y))zero_one * z) y. Add splitters to recongize this expression to generate SFB instructions. gcc/ChangeLog: PR target/113095 * config/riscv/sfb.md: New splitters to rewrite single bit sign extension as

Re: [PATCH v2] RISC-V: Add split pattern to generate SFB instructions. [PR113095]

2024-01-24 Thread Monk Chiang
Thank you for your help. I will update the test case. I test on the Coremark and have 5% improvement on the SiFive CPU. On Tue, Jan 23, 2024 at 12:24 PM Jeff Law wrote: > > > On 1/21/24 23:12, Monk Chiang wrote: > > Since the match.pd transforms (zero_one == 0) ? y : z y, >

[PATCH v2] RISC-V: Add split pattern to generate SFB instructions. [PR113095]

2024-01-21 Thread Monk Chiang
Since the match.pd transforms (zero_one == 0) ? y : z y, into ((typeof(y))zero_one * z) y. Add splitters to recongize this expression to generate SFB instructions. gcc/ChangeLog: PR target/113095 * config/riscv/sfb.md: New splitters to rewrite single bit sign extension as

[PATCH] RISC-V: Add split pattern to generate SFB instructions. [PR113095]

2024-01-18 Thread Monk Chiang
Since the match.pd transforms (zero_one == 0) ? y : z y, into ((typeof(y))zero_one * z) y. Add splitters to recongize this expression to generate SFB instructions. gcc/ChangeLog: PR target/113095 * config/riscv/sfb.md: New splitters to rewrite single bit sign extension as

Re: [PATCH] match: Do not select to branchless expression when target has movcc pattern [PR113095]

2024-01-17 Thread Monk Chiang
Thanks for your advice!! I agree it should be fixed in the RISC-V backend when expansion. On Wed, Jan 17, 2024 at 10:37 PM Jeff Law wrote: > > > On 1/17/24 05:14, Richard Biener wrote: > > On Wed, 17 Jan 2024, Monk Chiang wrote: > > > >> This allows the backend

[PATCH] match: Do not select to branchless expression when target has movcc pattern [PR113095]

2024-01-17 Thread Monk Chiang
This allows the backend to generate movcc instructions, if target machine has movcc pattern. branchless-cond.c needs to be updated since some target machines have conditional move instructions, and the experssion will not change to branchless expression. gcc/ChangeLog: PR target/113095

[PATCH 2/2] RISC-V: Implement locality for __builtin_prefetch

2023-07-12 Thread Monk Chiang via Gcc-patches
gcc/ChangeLog: * config/riscv/riscv.cc (riscv_print_operand): Add 'N' for print a non-temporal locality hints instruction. * config/riscv/riscv.md (prefetch): Add NTLH instruction for prefetch.r and prefetch.w. gcc/testsuite/ChangeLog:

[PATCH 1/2] RISC-V: Recognized zihintntl extensions

2023-07-12 Thread Monk Chiang via Gcc-patches
gcc/ChangeLog: * common/config/riscv/riscv-common.cc: (riscv_implied_info): Add zihintntl item. (riscv_ext_version_table): Ditto. (riscv_ext_flag_table): Ditto. * config/riscv/riscv-opts.h (MASK_ZIHINTNTL): New macro. (TAR

[PATCH] RISC-V: Remove unnecessary register class.

2023-02-02 Thread Monk Chiang
Avoid VL_REGS, VTYPE_REGS join register allocation. gcc/ChangeLog: * config/riscv/riscv.h: Remove VL_REGS, VTYPE_REGS class. * config/riscv/riscv.cc: Ditto. --- gcc/config/riscv/riscv.cc | 8 +--- gcc/config/riscv/riscv.h | 6 -- 2 files changed, 1 insertion(+), 13 delet

[PATCH] RISC-V: Recognized Svinval and Svnapot extensions

2022-10-24 Thread Monk Chiang
gcc/ChangeLog: * common/config/riscv/riscv-common.cc (riscv_ext_version_table): Add svinval and svnapot extension. (riscv_ext_flag_table): Ditto. * config/riscv/riscv-opts.h (MASK_SVINVAL): New. (MASK_SVNAPOT): Ditto. (TARGET_SVINVAL): Ditto.

[PATCH] RISC-V: Add type attribute for atomic instructions.

2022-10-20 Thread Monk Chiang
gcc/ChangeLog: * config/riscv/riscv.md: Add atomic type attribute. * config/riscv/sync.md: Add atomic type for atomic instructions. --- gcc/config/riscv/riscv.md | 2 +- gcc/config/riscv/sync.md | 15 ++- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git

[PATCH v2] PR target/97682 - Fix to reuse t1 register between call address and epilogue.

2020-11-12 Thread Monk Chiang
- When expanding the call pattern, choose t1 register be a jump register. Epilogue also uses a t1 register to adjust Stack point. The call pattern and epilogue will initial t1 twice, if both are generated in the same function. The call pattern will emit 'la t1,symbol' and 'jalr t1'in

[PATCH] PR target/97682 - Fix to reuse t1 register between call address and epilogue.

2020-11-09 Thread Monk Chiang
- When expanding the call pattern, choose t1 register be a jump register. Epilogue also uses a t1 register to adjust Stack point. The call pattern and epilogue will initial t1 twice, if both are generated in the same function. The call pattern will emit 'la t1,symbol' and 'jalr t1'in

Re: [PATCH, nds32] Missing target_cpu_default in TARGET_DEFAULT_TARGET_FLAGS.

2013-12-16 Thread Monk Chiang
2013/12/13 Chung-Ju Wu : > 2013/12/11 Monk Chiang : >> Hi, >> >> Recently I used --target=nds32be-elf to configure nds32 gcc, >> it seems that the big endian is not set as default. >> > [...] >> >> The following is the patch to fix this issue. Teste

[PATCH, nds32] Missing target_cpu_default in TARGET_DEFAULT_TARGET_FLAGS.

2013-12-11 Thread Monk Chiang
OV) Index: ChangeLog === --- ChangeLog (revision 205880) +++ ChangeLog (working copy) @@ -1,3 +1,8 @@ +2013-12-11 Monk Chiang + + * common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS): + Redefine. + 2