diff options
author | Iain Buclaw <ibuclaw@gdcproject.org> | 2022-11-01 17:46:37 +0100 |
---|---|---|
committer | Iain Buclaw <ibuclaw@gdcproject.org> | 2022-11-01 17:46:37 +0100 |
commit | 762066ae83e0b863f647cb7a04e745fa334c22ef (patch) | |
tree | c40d3716dd47e65d8ac1aeab28f6fed8dd497c35 /gcc/ggc-common.cc | |
parent | 2d1c287af3a074d40e84234be9feca904af627d5 (diff) | |
parent | e7310e24b1c0ca67b1bb507c1330b2bf39e59e32 (diff) | |
download | gcc-762066ae83e0b863f647cb7a04e745fa334c22ef.zip gcc-762066ae83e0b863f647cb7a04e745fa334c22ef.tar.gz gcc-762066ae83e0b863f647cb7a04e745fa334c22ef.tar.bz2 |
Merge remote-tracking branch 'mainline/trunk' into ibuclaw/merge_trunk
Diffstat (limited to 'gcc/ggc-common.cc')
-rw-r--r-- | gcc/ggc-common.cc | 7 |
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); |