From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 125763 invoked by alias); 8 Apr 2017 19:59:59 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 125720 invoked by uid 89); 8 Apr 2017 19:59:57 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.5 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=no version=3.3.2 spammy=(unknown) X-Spam-User: qpsmtpd, 2 recipients X-HELO: mail-ua0-f169.google.com Received: from mail-ua0-f169.google.com (HELO mail-ua0-f169.google.com) (209.85.217.169) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 08 Apr 2017 19:59:56 +0000 Received: by mail-ua0-f169.google.com with SMTP id u103so10536091uau.1; Sat, 08 Apr 2017 12:59:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=vVIUqBylS1aYESAN9w84hdCwlJ/5ccl6rDwAv17huSo=; b=a2mSoDS5D5Jpc8c2go1D0SR0K4Ur6jo48LWekTUjT2TS83UVx8rcqlOjdpVqt440Nc lZ9cD4waAvzr++qcrMR7W/ApUhBvF2uus15TlPKwEu8B22ibpr9DZb/SPCeljCqoBcTj qvjiD4L1WOuFORhFSwU6T3r2yh8pQPGM8soRgR4I5c1blNDA38Nfv4+KtTD3oMKnQ6wj 6Go0YfrkdrmhKYXSHyR1bSHJKbct2h1b6clFyHJ39afSh/d5yAaIezjcx9FvfZoRQVCK 55+vdByiD7utV84SMdDVwtpbo72sLdiKwEt58/jjWa+yF6Js0mdBI77IMDJDpkl9+Sv4 OzYQ== X-Gm-Message-State: AN3rC/4vDn0y8yOWWDUJxU4lg+0gLm/A5vxTqKjD8mjhJlrmCecX4H36xPFw01+XS4Yh3FWAGb0SxBx8315fBg== X-Received: by 10.176.3.83 with SMTP id 77mr7563430uat.87.1491681596260; Sat, 08 Apr 2017 12:59:56 -0700 (PDT) MIME-Version: 1.0 Received: by 10.176.4.70 with HTTP; Sat, 8 Apr 2017 12:59:55 -0700 (PDT) In-Reply-To: <93ebf0f8-4d5f-2c2e-8c15-58c855beabd3@redhat.com> References: <93ebf0f8-4d5f-2c2e-8c15-58c855beabd3@redhat.com> From: Ilya Enkovich Date: Sat, 08 Apr 2017 19:59:00 -0000 Message-ID: Subject: Re: Fix for PR79987 To: Jeff Law Cc: Alexander Ivchenko , marxin@gcc.gnu.org, GCC Patches Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2017-04/txt/msg00417.txt.bz2 2017-04-04 18:34 GMT+03:00 Jeff Law : > On 04/04/2017 09:07 AM, Alexander Ivchenko wrote: >> >> Hi, >> >> When creating static bounds for foo below we end up with: >> >> *((unsigned long *) &__chkp_bounds_of_foo + 8) = >> ~(__builtin_ia32_sizeof (foo) + ((long unsigned int) &foo + >> 18446744073709551615)); >> >> This fails in gimplify_function_tree with gcc_assert (!VOID_TYPE_P >> (TREE_TYPE (*expr_p))); >> >> Is it OK? >> >> gcc/ChangeLog: >> >> 2017-04-04 Alexander Ivchenko >> >> * tree-chkp.c (chkp_get_bounds_for_decl_addr): >> assigning zero bounds to void variables >> >> >> gcc/testsuite/ChangeLog: >> >> 2017-04-04 Alexander Ivchenko >> >> * gcc.target/i386/mpx/PR79987.c: New test. > > I've put this (and other CHKP fixes) in the queue for gcc-8 as AFAICT it's > not a regression. > > Jeff > Hi, If we delay it for GCC8 anyway then I think we may fix it in a better way. If we cannot detect size of a variable then size relocations may be used. It is done already for arrays with unknown size and also can be done for void vars. Thanks, Ilya