r184484 - in /branches/google/gcc-4_6-mobile/vt...

ctice@gcc.gnu.org ctice@gcc.gnu.org
Wed Feb 22 17:05:00 GMT 2012


Author: ctice
Date: Wed Feb 22 17:05:27 2012
New Revision: 184484

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=184484
Log:
Generate weak version of __VerifyVtablePointer, and insert calls to it prior to each virtual method dispatch.


2012-02-16  Caroline Tice <cmtice@google.com>

	* gcc/timevar.def (TV_VTABLE_VERIFICATION): New timevar definition.
	* gcc/tree-vtable-verify.c: New file defining vtable verification pass.
	* gcc/common.opt (fvtable-verify): New flag, to control vtable
	verification pass.
	* gcc/Makefile.in (OBJS-common): Add tree-vtable-verify.o to list.
	(tree-vtable-verify.o):  Add rule.
	* gcc/passes.c (init_optimization_passes):  Add pass_vtable_verify.
	* gcc/config/i386/i386.c (ix86_vtable_security_code_end):  New
	function to generate weak version of __VerifyVtablePointer.
	(ix86_code_end): Add call to ix86_vtable_security_code_end.
	* tree-pass.h (pass_vtable_verify): New extern declaration for pass.


Added:
    branches/google/gcc-4_6-mobile/vtable-security/gcc/tree-vtable-verify.c   (with props)
Modified:
    branches/google/gcc-4_6-mobile/vtable-security/gcc/Makefile.in
    branches/google/gcc-4_6-mobile/vtable-security/gcc/common.opt
    branches/google/gcc-4_6-mobile/vtable-security/gcc/config/i386/i386.c
    branches/google/gcc-4_6-mobile/vtable-security/gcc/passes.c
    branches/google/gcc-4_6-mobile/vtable-security/gcc/timevar.def
    branches/google/gcc-4_6-mobile/vtable-security/gcc/tree-pass.h

Propchange: branches/google/gcc-4_6-mobile/vtable-security/gcc/tree-vtable-verify.c
            ('svn:eol-style' added)




More information about the Gcc-cvs mailing list