Re: [PATCH] RISC-V: VECT: Remember to assert any_known_not_updated_vssa

2023-11-09 Thread Maxim Blinov
Yes, those tests that triggered the ICE now pass. Maxim On Thu, 9 Nov 2023 at 16:26, Jeff Law wrote: > > > On 11/6/23 06:01, Maxim Blinov wrote: > > From: Maxim Blinov > > > > This patch is based on and intended for the > vendors/riscv/gcc-13-with-riscv-opts bra

Re: [PATCH] RISC-V: VECT: Remember to assert any_known_not_updated_vssa

2023-11-06 Thread Maxim Blinov
On Mon, 6 Nov 2023 at 13:07, Richard Biener wrote: > I see > > DEF_INTERNAL_OPTAB_FN (VEC_EXTRACT, ECF_CONST | ECF_NOTHROW, >vec_extract, vec_extract) > > ? Oh, you're right! I should have checked the master branch first... and I was even wondering why it wasn't marked as

[PATCH] RISC-V: VECT: Remember to assert any_known_not_updated_vssa

2023-11-06 Thread Maxim Blinov
From: Maxim Blinov This patch is based on and intended for the vendors/riscv/gcc-13-with-riscv-opts branch - please apply if looks OK. Fixes the following ICEs that I'm seeing: FAIL: gcc.dg/vect/O3-pr49087.c (internal compiler error: in vect_transform_loops, at tree-vectorizer.cc:1032) FAIL

Re: [PATCH 0/4] Add aarch64-darwin support for off-stack trampolines

2021-11-22 Thread Maxim Blinov
/longjmp so that the state of trampolines is correctly tracked and freed when necessary, however that hasn't been worked on yet. On Sat, 13 Nov 2021 at 09:45, Maxim Blinov wrote: > > Note: This patch is not yet ready for trunk as its dependent on some > patches that are not-yet-upstream

Re: [PATCH 1/2] Add cumulative_args_t variants of TARGET_FUNCTION_ROUND_BOUNDARY and friends

2021-11-22 Thread Maxim Blinov
Nov 13, 2021 at 10:43 AM Maxim Blinov > wrote: > > > > The two target hooks responsible for informing GCC about stack > > parameter alignment are `TARGET_FUNCTION_ARG_BOUNDARY` and > > `TARGET_FUNCTION_ARG_ROUND_BOUNDARY`, which currently only consider > > the tr

[PATCH 4/4] Add aarch64-darwin support for off-stack trampolines

2021-11-13 Thread Maxim Blinov
Note: This patch is not yet ready for trunk as its dependent on some patches that are not-yet-upstream, however it serves as motivation for the previous patch(es) which are independent. Implement the __builtin_nested_func_ptr_{created,deleted} functions for the aarch64-darwin platform. For

[PATCH 1/4] Generate off-stack nested function trampolines

2021-11-13 Thread Maxim Blinov
Add support for allocating nested function trampolines on an executable heap rather than on the stack. This is motivated by targets such as AArch64 Darwin, which globally prohibit executing code on the stack. The target-specific routines for allocating and writing trampolines is to be provided in

[PATCH 2/4] Add x86_64-linux support for off-stack trampolines

2021-11-13 Thread Maxim Blinov
Implement the __builtin_nested_func_ptr_{created,deleted} functions for the x86_64-linux platform. This serves to exercise the infrastructure added in libgcc (--enable-off-stack-trampolines) and gcc (-foff-stack-trampolines) in supporting off-stack trampoline generation, and is intended primarily

[PATCH 3/4] Add aarch64-linux support for off-stack trampolines

2021-11-13 Thread Maxim Blinov
Implement the __builtin_nested_func_ptr_{created,deleted} functions for the aarch64-linux platform. This serves to exercise the infrastructure added in libgcc (--enable-off-stack-trampolines) and gcc (-foff-stack-trampolines) in supporting off-stack trampoline generation, and is intended primarily

[PATCH 2/2] Implement TARGET_..._CA target hooks for AArch64 Darwin

2021-11-13 Thread Maxim Blinov
Note: This patch is not yet ready for trunk as its dependent on some patches that are not-yet-upstream, however it serves as motivation for the previous patch(es) which are independent. The AArch64 Darwin platform requires that named stack arguments are passed naturally-aligned, while

[PATCH 1/2] Add cumulative_args_t variants of TARGET_FUNCTION_ROUND_BOUNDARY and friends

2021-11-13 Thread Maxim Blinov
The two target hooks responsible for informing GCC about stack parameter alignment are `TARGET_FUNCTION_ARG_BOUNDARY` and `TARGET_FUNCTION_ARG_ROUND_BOUNDARY`, which currently only consider the tree and machine_mode of a specific given argument. Create two new target hooks suffixed with '_CA',

[PATCH v2] analyzer: Define INCLUDE_UNIQUE_PTR

2021-09-14 Thread Maxim Blinov
Un-break the build for AArch64 Darwin, see PR bootstrap/102242. Build fails with log below: ``` In file included from ../../../gcc-master-wip-apple-si/gcc/analyzer/engine.cc:69: In file included from

[PATCH] analyzer: Define INCLUDE_UNIQUE_PTR

2021-09-10 Thread Maxim Blinov
Un-break the build for AArch64 Darwin. Build currently fails with an error very similar to pr82091: ``` In file included from ../../../gcc-master-wip-apple-si/gcc/analyzer/engine.cc:69: In file included from

[PATCH v2] RISC-V: Raise error on unexpected ISA string at end.

2019-07-31 Thread Maxim Blinov
or_at (loc, "%<-march=%s%>: unexpected ISA string at end: %qs" I've made the corresponding changes. tested with RUNTESTFLAGS="riscv.exp" Thanks, Maxim gcc/ChangeLog: 2019-07-31 Maxim Blinov * common/config/riscv/riscv-common.c: Check -march string ends with

[PATCH] RISC-V: Raise error on unexpected ISA string at end.

2019-07-31 Thread Maxim Blinov
. tested with RUNTESTFLAGS="riscv.exp" Thanks, Maxim gcc/ChangeLog: 2019-07-31 Maxim Blinov * common/config/riscv/riscv-common.c: Check -march string ends with null. gcc/testsuite/ChangeLog: 2019-07-31 Maxim Blinov * gcc.target/riscv/attribute-10.c: New test.