This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- From: Ilya Enkovich <enkovich dot gnu at gmail dot com>
- To: Richard Biener <richard dot guenther at gmail dot com>
- Cc: Jeff Law <law at redhat dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 19 Nov 2013 16:13:42 +0400
- Subject: Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Authentication-results: sourceware.org; auth=none
- References: <CAFiYyc2xd7wynB9JRPF3KWY6EhXg-=KUg=g5BTxOjzO1pF3ovQ at mail dot gmail dot com> <CAMbmDYZSpcnCxufY59_QCL_Zp8-=+fQEZvi_tJCDKE=M=Hwqfg at mail dot gmail dot com> <CAFiYyc0RGepPUTU36HCvLrFFM_Y1eGae9kuAV8tn=MZnTRLwzA at mail dot gmail dot com> <CAMbmDYaL=q4D5qfXENhaH5OjdsMznwiyWURWLDw+8unyxP-0oQ at mail dot gmail dot com> <CAFiYyc2owq4pow_h0uep6vw9wUoay5CrLVEVpAuq0yQSmgiW7w at mail dot gmail dot com> <CAMbmDYbm5=Z-MpeSWuu9+K=fUfcPUjzNfHWWVGVAGNW=UB=O9Q at mail dot gmail dot com> <CAFiYyc1wzbuW11n5LE5LHi7Zhxkt3wgT_0LHW=UGJ3zAqvpETg at mail dot gmail dot com> <20131108090256 dot GA21297 at msticlxl57 dot ims dot intel dot com> <528A4419 dot 7030902 at redhat dot com> <CAFiYyc3cCAFE3eTvkrA0J+pT8+t7vp73cXL=z65Y6gr8Wj7ARg at mail dot gmail dot com>
On 19 Nov 13:00, Richard Biener wrote:
> On Mon, Nov 18, 2013 at 5:45 PM, Jeff Law <law@redhat.com> wrote:
> > On 11/08/13 02:02, Ilya Enkovich wrote:
> >>
> >> Hi,
> >>
> >> Here is an updated patch version with no langhook.
> >>
> >> Regarding TLS objects issue - I do not think compiler should compensate
> >> the absence of instrumentation in libraries. Compiler should be responsible
> >> for initialization of Bounds Tables for .tdata section. Correct data copy
> >> is a responsibility of library. User should use either instrumented library
> >> or wrapper calls if he needs this functionality.
> >>
> >> Thanks,
> >> Ilya
> >> --
> >> gcc/
> >>
> >> 2013-11-06 Ilya Enkovich <ilya.enkovich@intel.com>
> >>
> >> * c/c-parser.c: Include tree-chkp.h.
> >> (c_parser_declaration_or_fndef): Register statically
> >> initialized decls in Pointer Bounds Checker.
> >> * cp/decl.c: Include tree-chkp.h.
> >> (cp_finish_decl): Register statically
> >> initialized decls in Pointer Bounds Checker.
> >> * gimplify.c: Include tree-chkp.h.
> >> (gimplify_init_constructor): Register statically
> >> initialized decls in Pointer Bounds Checker.
> >
> > Is parsing really the right time to register these things with the checking
> > framework? Doesn't all this stuff flow through the gimplifier? If so
> > wouldn't that be a better place?
> >
> > If it can be done in the gimplifier, which seems good from the standpoint of
> > simplifying the long term maintenance of the checking code.
> >
> > If there's a good reason to have this front-end, please explain it.
>
> I'd say not in the gimplifier either but in varpool (symbol table) code
> where the symbols are ultimatively registered with?
Something like that?
--- a/gcc/varpool.c
+++ b/gcc/varpool.c
@@ -151,6 +151,10 @@ varpool_node_for_decl (tree decl)
node = varpool_create_empty_node ();
node->decl = decl;
symtab_register_node (node);
+
+ if (DECL_NIITIAL (decl))
+ chkp_register_var_initializer (decl);
+
return node;
}
Thanks,
Ilya
>
> Richard.
>
> > Thanks,
> > Jeff
> >
- References:
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support
- Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support