From patchwork Thu Nov 7 11:46:45 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Enkovich X-Patchwork-Id: 289303 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 715132C00A0 for ; Thu, 7 Nov 2013 22:47:48 +1100 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:date :from:to:subject:message-id:mime-version:content-type; q=dns; s= default; b=rnBUmo8WL4InVI+PXVihF++U0VkD+YsDKy4ciy7TtAEo4lxfxjBGU sRxhwbuF8q6nghkL86/UV2Jf2cuJwje8k1ii+wbpYSAvxiYe2gV6+O8YhQUUpzBz qtXi7htqW6ei6OoHaW3wAL5wEmGG/nsFYPyR8LIS3vmOI9MMoKwHVQ= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:date :from:to:subject:message-id:mime-version:content-type; s= default; bh=DRH/490CVnmYPzbZ/shJmfHEqAk=; b=cDohu51dugthHXXcSbXT nA7Umv4zGfN7kuaNDenLFOB6Ut/Wwb38AF9W4UU4Ar6LeThnxU/cc2JJUzyqaRIi GPrdKD4PxauojT3rjzDQGwKCs1hstS2Aalglj0Ty1F0szcYlqs1cTOyz9QDPUxcr KVprhmVFcLEqyqoN6YXEmls= Received: (qmail 23063 invoked by alias); 7 Nov 2013 11:47:37 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 23054 invoked by uid 89); 7 Nov 2013 11:47:37 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=2.9 required=5.0 tests=AWL, BAYES_50, FREEMAIL_FROM, RDNS_NONE, SPAM_SUBJECT, SPF_PASS, URIBL_BLOCKED autolearn=no version=3.3.2 X-HELO: mail-pa0-f47.google.com Received: from Unknown (HELO mail-pa0-f47.google.com) (209.85.220.47) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Thu, 07 Nov 2013 11:47:35 +0000 Received: by mail-pa0-f47.google.com with SMTP id lf10so493575pab.34 for ; Thu, 07 Nov 2013 03:47:27 -0800 (PST) X-Received: by 10.66.147.9 with SMTP id tg9mr9238529pab.5.1383824847056; Thu, 07 Nov 2013 03:47:27 -0800 (PST) Received: from msticlxl57.ims.intel.com ([192.55.54.40]) by mx.google.com with ESMTPSA id lm2sm5803375pab.2.2013.11.07.03.47.25 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Thu, 07 Nov 2013 03:47:26 -0800 (PST) Date: Thu, 7 Nov 2013 15:46:45 +0400 From: Ilya Enkovich To: gcc-patches@gcc.gnu.org Subject: [PATCH, MPX, 2/X] Pointers Checker. Remove checker language hook. Message-ID: <20131107114645.GI54327@msticlxl57.ims.intel.com> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes Hi, Here is a patch to remove language hook used by Pointer Bounds Checker. To disable checker on non C languages option is moved to c.opt. Thanks, Ilya --- gcc/ 2013-11-06 Ilya Enkovich * common.opt (fcheck-pointer-bounds): Move to ... * c-family/c.opt: ... here. * langhooks-def.h (LANG_HOOKS_CHKP_SUPPORTED): Remove. (LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_CHKP_SUPPORTED. * langhooks.h (lang_hooks): Remove chkp_supported field. * toplev.c (process_options): Remove chkp_supported check. diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt index b862eb9..c082bac 100644 --- a/gcc/c-family/c.opt +++ b/gcc/c-family/c.opt @@ -850,6 +850,11 @@ fcanonical-system-headers C ObjC C++ ObjC++ Where shorter, use canonicalized paths to systems headers. +fcheck-pointer-bounds +C ObjC C++ ObjC++ LTO Report Var(flag_check_pointer_bounds) +Add Pointer Bounds Checker instrumentation. fchkp-* flags are used to +control instrumentation. + fcilkplus C ObjC C++ ObjC++ LTO Report Var(flag_enable_cilkplus) Init(0) Enable Cilk Plus diff --git a/gcc/common.opt b/gcc/common.opt index 5c2f56e..deeb3f2 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -874,11 +874,6 @@ fbounds-check Common Report Var(flag_bounds_check) Generate code to check bounds before indexing arrays -fcheck-pointer-bounds -Common Report Var(flag_check_pointer_bounds) -Add Pointer Bounds Checker instrumentation. fchkp-* flags are used to -control instrumentation. Currently available for C, C++ and ObjC. - fbranch-count-reg Common Report Var(flag_branch_on_count_reg) Init(1) Optimization Replace add, compare, branch with branch on count register diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h index 0597036..b7be472 100644 --- a/gcc/langhooks-def.h +++ b/gcc/langhooks-def.h @@ -118,7 +118,6 @@ extern bool lhd_omp_mappable_type (tree); #define LANG_HOOKS_BLOCK_MAY_FALLTHRU hook_bool_const_tree_true #define LANG_HOOKS_EH_USE_CXA_END_CLEANUP false #define LANG_HOOKS_DEEP_UNSHARING false -#define LANG_HOOKS_CHKP_SUPPORTED false /* Attribute hooks. */ #define LANG_HOOKS_ATTRIBUTE_TABLE NULL @@ -306,8 +305,7 @@ extern void lhd_end_section (void); LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS, \ LANG_HOOKS_BLOCK_MAY_FALLTHRU, \ LANG_HOOKS_EH_USE_CXA_END_CLEANUP, \ - LANG_HOOKS_DEEP_UNSHARING, \ - LANG_HOOKS_CHKP_SUPPORTED \ + LANG_HOOKS_DEEP_UNSHARING \ } #endif /* GCC_LANG_HOOKS_DEF_H */ diff --git a/gcc/langhooks.h b/gcc/langhooks.h index 002d7eb..a83bf7b 100644 --- a/gcc/langhooks.h +++ b/gcc/langhooks.h @@ -472,9 +472,6 @@ struct lang_hooks gimplification. */ bool deep_unsharing; - /* True if this language allows pointers checker instrumentation. */ - bool chkp_supported; - /* Whenever you add entries here, make sure you adjust langhooks-def.h and langhooks.c accordingly. */ }; diff --git a/gcc/toplev.c b/gcc/toplev.c index 0eaf081..d3dac07 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1286,9 +1286,6 @@ process_options (void) { if (targetm.chkp_bound_mode () == VOIDmode) error ("-fcheck-pointers is not supported for this target"); - - if (!lang_hooks.chkp_supported) - flag_check_pointer_bounds = 0; } /* One region RA really helps to decrease the code size. */