From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from aserp2130.oracle.com (aserp2130.oracle.com [141.146.126.79]) by sourceware.org (Postfix) with ESMTPS id 7B869383541B for ; Thu, 3 Jun 2021 20:18:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7B869383541B Received: from pps.filterd (aserp2130.oracle.com [127.0.0.1]) by aserp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 153KFmSC156744; Thu, 3 Jun 2021 20:18:21 GMT Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by aserp2130.oracle.com with ESMTP id 38ub4cvdjw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Jun 2021 20:18:21 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 153KFdEL137880; Thu, 3 Jun 2021 20:18:20 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2176.outbound.protection.outlook.com [104.47.58.176]) by aserp3020.oracle.com with ESMTP id 38xyn1g7qw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Jun 2021 20:18:20 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dszwv5H0xJHrxnBjcEma3rrkrEctJktfjB3S6V9JzrvRzpjos+MmYZGBLjVUoejsxrWl/ecgCLMbb88tU4UX+F+eqS89SmchalxYssRnfmG+6zUDAfiAvOREgdAR9FcAqrc3WvJ/zHeBngK+4tSOJl6cgQgjjpjaQdW5OINjMl/OaG92wiWcCNrSv+Zxyst1Gv4TvhRMxA26WPcWtpowHjySF78vFUm6vDym4TH/nc6dIZwLaWSgl6XkcjJ3gagJntgAhDFLAGaDI/GsUQc0KtRcdseu7D2pVHUm2q/MUWEGJZgEgHBH1jDksWj5fQ9+Z1FrCfr9+otKopwCgMYdtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wPqmxQ+I/U0fLDJ02iiYTVLTetmULISJHLrfjW0wcFs=; b=gR20iCinZ62wXvmbe0e9VaIDJcnJnSWYs4X+o8EYBgssThmhmcrEcF2udh4ydYCPwntwL+8lrvxzvZqUhoeJFRlfzpJa4P7bpBjAVo9Apuw/b/PmEWsJ0uGGkeFu+PA/yEnwPa2qruoeF0Mq5ryZVho3aMwopqMMADkDozZ0J9wDGKR/4oozej7Nwbd4wB05pOQFimYP4MAn0LJb3U4sVJkAjmwL9ZA9OtrZB6GpXomAj20UX07Qnt+UfSKif5RMRpjJOktKNi1ui3lfQ0lXKVDdE8G5cK9poUtA6JES+YLe3Hoo8YOjTOsfc3DqfeY8VKzdOjmDaSOaSHD9tZKt8w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none Received: from CH2PR10MB4344.namprd10.prod.outlook.com (2603:10b6:610:af::19) by CH0PR10MB5292.namprd10.prod.outlook.com (2603:10b6:610:ca::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4195.23; Thu, 3 Jun 2021 20:18:18 +0000 Received: from CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::f47b:b4a3:b49c:95f5]) by CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::f47b:b4a3:b49c:95f5%3]) with mapi id 15.20.4195.022; Thu, 3 Jun 2021 20:18:18 +0000 From: Qing Zhao To: Richard Biener CC: richard Sandiford , kees Cook , gcc-patches Qing Zhao via Subject: Re: [PATCH][version 3]add -ftrivial-auto-var-init and variable attribute "uninitialized" to gcc Thread-Topic: [PATCH][version 3]add -ftrivial-auto-var-init and variable attribute "uninitialized" to gcc Thread-Index: AQHXR1Kuy/D2g4SciEWtZxHW0ZO4nqr1sxUAgA0pdAA= Date: Thu, 3 Jun 2021 20:18:18 +0000 Message-ID: <720A8309-1964-4861-BE1C-7F7E1EB9FE18@oracle.com> References: <52959802-6AF1-4BFC-B984-3BC495C535BD@ORACLE.COM> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3608.120.23.2.6) x-originating-ip: [2601:444:200:16b:5187:d742:7bc9:c339] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 2a9bfff1-0e75-4777-3578-08d926ccb9f0 x-ms-traffictypediagnostic: CH0PR10MB5292: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9yvqWjAXjHwqalchx1L7YTYoETfuecO1srISWmZqSQ93KTqxR7/AsLIHrk7451wrmkjHno8xeORVQ4GAQbyqTRjEzuqor3hI0OAgDIq/W/iFyeywl4iS3/UeGJOttyGXv9PXN3l2vDbQ01fkPKvs4I5oJMuSB4O6QQKnsomZcyDfVkCB2OiVvj1Q5mqlxR/U7owmxMTIDybolDVLumtGxSkt3zWOt6SNX4iwnGFbFrk0HAe8NYYZabs+B4t6rpUhzNg36/lEn5fY3AgYwsl7atGlsDRPNeczNFY7uqWI+MM5+FwU26GNpwxlyYDxA0Rw0fXTKT2TbQmNBRXQb8atuE6HE+8uVEIPe1BXwpEv0MO2Qz5pbEcnIRcqjhCkj0t0iD11VjukMoV1SD49pS+RzRMtCztVXfMOWPRnIfPmlYXHX8gpgfhEDwPA6x/DDm0YZVLXB6sC0qwqkWX3oTCn8/0rFZVfRc3+83vLmk3llVgkNjpSVPvdZpGVvvzH5jaR/MNRF9K1TlfE28XeZdNAWL5DAqw0SMHjcwyGkGzJhLwfz1q0GnIR9wqod8gLjpbm1WLgVDoJXFl/kIk/2IWi3GTgbqbV/Up9/TW/1LUA+vNURcJQg0M7RyhWPyevA1VJ4lSSg/NUWatevxFJCMm3PBCCW1CgOmpdwuxMKYsuX84= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH2PR10MB4344.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(39860400002)(136003)(376002)(366004)(346002)(396003)(8676002)(478600001)(44832011)(186003)(66556008)(5660300002)(6512007)(66446008)(64756008)(53546011)(8936002)(2616005)(2906002)(66476007)(122000001)(6486002)(6916009)(36756003)(86362001)(66946007)(4326008)(6506007)(91956017)(38100700002)(316002)(76116006)(71200400001)(33656002)(83380400001)(54906003)(45980500001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?us-ascii?Q?fGS2Igwf8QVdUpC0Y2B/lEVtKIY6law+jqOoXzuBrr7VRZEzC7iG3XeZ09lI?= =?us-ascii?Q?6HTaeP9hwa0qEXMfeCNb/j1v7NCwgVGE4hF3aKnBxB5UJVE0Tbqj99zek4tn?= =?us-ascii?Q?tdM/YK6GXkEDHnUXnp1QOUD7b6owiIRhPIgTvZaTwXseqelfmxJJ/iRqgBdm?= =?us-ascii?Q?aKjlFlExvQkIjsGFB65QfdaGsvcUG7T1443hopvsLMsmBCVT2IB/qdXdP3B8?= =?us-ascii?Q?6ivMph9kDRYB584/gLHJ3i70DIdEUTXOwyyF0XyaXy7+v1iDz2hOVbGgnDEW?= =?us-ascii?Q?eqKQtrY1RfXBOdpOvjEYY32gqtOaNowU+WwJgDeonZ1QxekYsI0C0CG/IkQc?= =?us-ascii?Q?q/7vXfSA1R7taKteLQhOVcB5O0eARo8lXUXMgRWFV3wNWrcv4CYeuliuvZbA?= =?us-ascii?Q?1UtiHsPTKab9NEU9DJfSia6fukHxo0rMD0B1PXRDAbxWGkd6IQkpWWnsuGyH?= =?us-ascii?Q?UkhNOEI48NgCRb12TXe+cHqW6o3PgtE5YTU4DuNQM3ZyUsmDk+418FbKZdAA?= =?us-ascii?Q?OgC3pJYByd/QWPOGS51gmjOn3HORAvtTdsSAkv9qz4+QnwNlLfq1aTi4vf3c?= =?us-ascii?Q?b5kK2e/uoiHBl5SroEQu+YChjbdmaLz9zTUtA6aG2qiyKlAQOzTpc/DtYWxp?= =?us-ascii?Q?px1/9U1MtU8Ak4wD+r9cLf8tpjdXbwocWfWBxCs+fZT1jVx52dHZsIMTPlan?= =?us-ascii?Q?Jo0e1T/7e4/FFAI3PQAjIvj7amyOd1j9lTZ+O/vm2tY7sgZxL44ouGzkYhL0?= =?us-ascii?Q?MLkmWEpmU4y3PPZXJkHhuKdZS1f6S7lAhuDh3xgeO1Nlq/937Q105/E75L1r?= =?us-ascii?Q?f8N14zp19e5xt8YRKfKqQQ/qXB8lgbNQIeN5Bgc1PzQKhkKJtQ5JDfxHXPH+?= =?us-ascii?Q?DHjTNknmj6kJxIS2I7E1KOayAcBMBgRNWDMJwRbKYhXAhNx/vp6QDx9KZBTP?= =?us-ascii?Q?rZMqNYAAMpdoZQoWXo1d36yRcH2eLVvZn6raXz8Jpp9s8ADANEjb1CJOZexY?= =?us-ascii?Q?/lpoiZSiYSP0pC4hf53C4Rce1WKhcpQBpCaFUzl0CVO8kRyb+82m67+sG7/E?= =?us-ascii?Q?77/kHcQFdYmIaqQLHV5/hhXWK0h5hhDcvknM3ri+FJPjczv/cGkHgri4mg4c?= =?us-ascii?Q?K1w3KUd5sCq252jiHSIYKV4Li+kSBEjOjTkQsPME9ILSiT72XExfAKI3EL+3?= =?us-ascii?Q?nim8d74dGuFRzykSIGRhJncg1Lnfu36eeFdZBsZSG4Zjjf3i6SgzDdlLIDV7?= =?us-ascii?Q?WQD/mCVUUoJKu30eYAjrdVGZgUrLbXnhMDSDYkZh4KH43kcC4rStaWVhp1By?= =?us-ascii?Q?oRGcygeLsu9V23XXW/8tXR/SKwYWJVCI7GAbAU3Y4x+OUp9zbm5VWUrvx9OW?= =?us-ascii?Q?3CuLSepONXeEmRiXc3bFpFFqLtfr?= x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH2PR10MB4344.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2a9bfff1-0e75-4777-3578-08d926ccb9f0 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jun 2021 20:18:18.3082 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: rqkar8qVNb5chDcQG+OZLjKJKVR2FyuDSZgIRxRhXMBITH9ATcGhj5Q3l7lZCWQMAbjGy1rWmLQm9YThaan9pw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR10MB5292 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10004 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 phishscore=0 bulkscore=0 suspectscore=0 mlxscore=0 malwarescore=0 spamscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104190000 definitions=main-2106030138 X-Proofpoint-GUID: A0LYUWJ4bI5nbYZBI4e1zPkTTVxG10t0 X-Proofpoint-ORIG-GUID: A0LYUWJ4bI5nbYZBI4e1zPkTTVxG10t0 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10004 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 mlxscore=0 mlxlogscore=999 malwarescore=0 bulkscore=0 phishscore=0 lowpriorityscore=0 clxscore=1015 impostorscore=0 adultscore=0 suspectscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104190000 definitions=main-2106030138 X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, HTML_MESSAGE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 03 Jun 2021 20:18:26 -0000 Hi, Richard, On May 26, 2021, at 6:18 AM, Richard Biener > wrote: On Wed, 12 May 2021, Qing Zhao wrote: Hi, This is the 3rd version of the patch for the new security feature for GCC. Please take look and let me know your comments and suggestions. +/* Returns true when the given TYPE has padding inside it. + return false otherwise. */ +bool +type_has_padding (tree type) +{ + switch (TREE_CODE (type)) + { + case RECORD_TYPE: + { btw, there's __builtin_clear_padding and a whole machinery around it in gimple-fold.c, I'm sure that parts could be re-used if they are neccessary in the end. To address the above suggestion: My study shows: the call to __builtin_clear_padding is expanded during gimp= lification phase. And there is no __bultin_clear_padding expanding during rtx expanding phase= . However, for -ftrivial-auto-var-init, padding initialization should be done= both in gimplification phase and rtx expanding phase. since the __builtin_clear_padding might not be good for rtx expanding, reus= ing __builtin_clear_padding might not work. Let me know if you have any more comments on this. Thanks. Qing