aboutsummaryrefslogtreecommitdiff
path: root/gcc/ggc-common.cc
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2022-11-04 13:22:10 +0000
committerGitHub <noreply@github.com>2022-11-04 13:22:10 +0000
commit0a59abbfc74c3961fb01323d9fbff8427518fde6 (patch)
treeb17389116bc4da1d022345b7b78eb6fc0fbe4eb0 /gcc/ggc-common.cc
parentf8c2fab0c6c11f73fdcb1eb31e8b5b75c2fdbf7f (diff)
parenta7b70c704182db2defd0c0f991c16f4d9219bc2f (diff)
downloadgcc-0a59abbfc74c3961fb01323d9fbff8427518fde6.zip
gcc-0a59abbfc74c3961fb01323d9fbff8427518fde6.tar.gz
gcc-0a59abbfc74c3961fb01323d9fbff8427518fde6.tar.bz2
Merge #1627
1627: Merge GCC mainline/master into gccrs/master r=CohenArthur a=ibuclaw `@doko42` was asking, so here's another merge sync. Co-authored-by: GCC Administrator <gccadmin@gcc.gnu.org> Co-authored-by: Andrew MacLeod <amacleod@redhat.com> Co-authored-by: Liwei Xu <liwei.xu@intel.com> Co-authored-by: Richard Biener <rguenther@suse.de> Co-authored-by: Jakub Jelinek <jakub@redhat.com> Co-authored-by: Andre Vieira <andre.simoesdiasvieira@arm.com> Co-authored-by: Jonathan Wakely <jwakely@redhat.com> Co-authored-by: Martin Jambor <mjambor@suse.cz> Co-authored-by: Joseph Myers <joseph@codesourcery.com> Co-authored-by: Patrick Palka <ppalka@redhat.com> Co-authored-by: Florian Weimer <fweimer@redhat.com> Co-authored-by: Marek Polacek <polacek@redhat.com> Co-authored-by: liuhongt <hongtao.liu@intel.com> Co-authored-by: Martin Liska <mliska@suse.cz> Co-authored-by: Robin Dapp <rdapp@linux.ibm.com> Co-authored-by: Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> Co-authored-by: Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
Diffstat (limited to 'gcc/ggc-common.cc')
-rw-r--r--gcc/ggc-common.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/ggc-common.cc b/gcc/ggc-common.cc
index 8b3389e..62da09d 100644
--- a/gcc/ggc-common.cc
+++ b/gcc/ggc-common.cc
@@ -253,7 +253,8 @@ static vec<void *> reloc_addrs_vec;
int
gt_pch_note_object (void *obj, void *note_ptr_cookie,
- gt_note_pointers note_ptr_fn)
+ gt_note_pointers note_ptr_fn,
+ size_t length_override)
{
struct ptr_data **slot;
@@ -273,7 +274,9 @@ gt_pch_note_object (void *obj, void *note_ptr_cookie,
(*slot)->obj = obj;
(*slot)->note_ptr_fn = note_ptr_fn;
(*slot)->note_ptr_cookie = note_ptr_cookie;
- if (note_ptr_fn == gt_pch_p_S)
+ if (length_override != (size_t)-1)
+ (*slot)->size = length_override;
+ else if (note_ptr_fn == gt_pch_p_S)
(*slot)->size = strlen ((const char *)obj) + 1;
else
(*slot)->size = ggc_get_size (obj);