aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJeff Law <jlaw@ventanamicro.com>2025-04-19 12:35:29 -0600
committerJeff Law <jlaw@ventanamicro.com>2025-04-19 12:35:29 -0600
commit1a64b224fa014e772fb30f6bd69ceb24da5827e6 (patch)
treeff43efe21610c1b9af4de831bea3f887b7d1e633 /gcc
parent874f4c164749f1ed5b60ddf1d4533c8f4ba627a1 (diff)
downloadgcc-1a64b224fa014e772fb30f6bd69ceb24da5827e6.zip
gcc-1a64b224fa014e772fb30f6bd69ceb24da5827e6.tar.gz
gcc-1a64b224fa014e772fb30f6bd69ceb24da5827e6.tar.bz2
[RISC-V][PR target/119865] Don't free ggc allocated memory
Kaiweng's patch to stop freeing riscv_arch_string was correct, but incomplete as there's another path that was freeing that node, which is just plain wrong for a node allocated by the GC system. This patch removes that call to free() which fixes the test. I've spun it in my tester and will obviously wait for the pre-commit system to render a verdict before moving forward. PR target/119865 gcc/ * config/riscv/riscv.cc (parse_features_for_version): Do not explicitly free the architecture string.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/riscv/riscv.cc3
1 files changed, 0 insertions, 3 deletions
diff --git a/gcc/config/riscv/riscv.cc b/gcc/config/riscv/riscv.cc
index d3656a7..bad59e2 100644
--- a/gcc/config/riscv/riscv.cc
+++ b/gcc/config/riscv/riscv.cc
@@ -13136,9 +13136,6 @@ parse_features_for_version (tree decl,
DECL_SOURCE_LOCATION (decl));
gcc_assert (parse_res);
- if (arch_string != default_opts->x_riscv_arch_string)
- free (CONST_CAST (void *, (const void *) arch_string));
-
cl_target_option_restore (&global_options, &global_options_set,
&cur_target);
}