From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 06582384F007 for ; Tue, 17 Aug 2021 16:08:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 06582384F007 Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 17HG2ksr018311; Tue, 17 Aug 2021 16:08:10 GMT Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80]) by mx0b-00069f02.pphosted.com with ESMTP id 3agdnf0j41-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 17 Aug 2021 16:08:10 +0000 Received: from pps.filterd (userp3030.oracle.com [127.0.0.1]) by userp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 17HG16nb037071; Tue, 17 Aug 2021 16:08:09 GMT Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2170.outbound.protection.outlook.com [104.47.56.170]) by userp3030.oracle.com with ESMTP id 3ae2y0e2xk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 17 Aug 2021 16:08:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iAnruUySkgzLCCIZwB1CAegbK2hvTd9yAFovfpHjtV1jYg/a01j5cfFTbeUPRyQ4XaWCxisg7EKI7b69piZgujW/1NvrwCnQY91TpxFM1JyAzqwcyyYxQpwQ+AnDj5pHUNRDEPGuLeT0t5CidcolCKXVmQ+NAKU8kkAXpHY3G6w6PSUmkNxA0nEkRmMKatxaKJxj8wo73ZLs4SvzON5KuENycnBYgQHoFLQMKm3ip5zq9gwAwLnoASYRuYobvYzLWe/C2BfTT2NhuU1ZSiAoGbSq4fJ9tOp63vxMYqCQ4IbtmoUydk+jQC40o9wPUYDMVZscgcF+4GwbaG67gvkYdg== 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=dWAOfHl8xlzHszSSznwWBoVkU/53/u028a21JZDLNHw=; b=PJC94gXI2jPvQSccc5XzbkJ+RL3VXBaors4S2MY19jkbBqManobc9facIurXQmwkVOgfOtOHVXEi7umZPua1SlAyOBFCDUDddurHPNjrnXYAV//Y8zhLU0SjW1MxLWJB4S9claGHydVw3dvXk8vsJPsZZMVyXrdNWOTTszoUdvJm8O2k8wlIekfWsPHkvZ3IT2rowYNeHT1wqqtAft+gyZldHD0H1hlKEcToLBDIaHYVGKz4/2PXUOEpSpm31+Z7KQuOrtvzH1JXIsFvckOLTyBx5XgirBy8RH2GbODJJEd69cxAwXQtF05enerwPQOmKmVZ82Gz53728EwtOGzR/A== 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 CH0PR10MB5291.namprd10.prod.outlook.com (2603:10b6:610:df::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.18; Tue, 17 Aug 2021 16:08:07 +0000 Received: from CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::f463:6b71:2491:d547]) by CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::f463:6b71:2491:d547%9]) with mapi id 15.20.4415.024; Tue, 17 Aug 2021 16:08:07 +0000 From: Qing Zhao To: Richard Biener CC: Jakub Jelinek , Nick Alcock via Gcc-patches , Kees Cook Subject: Re: [patch][version 6] add -ftrivial-auto-var-init and variable attribute "uninitialized" to gcc Thread-Topic: [patch][version 6] add -ftrivial-auto-var-init and variable attribute "uninitialized" to gcc Thread-Index: AQHXgpcfj6SO0Rka1UmU0GU91mFncqtrSzIAgAUO6ICABYSmgIAAh5qAgAEYkwCAAGpqAIAAFZqA Date: Tue, 17 Aug 2021 16:08:07 +0000 Message-ID: <986D883E-A346-456A-B335-4185D4B136B5@oracle.com> References: <52E29277-1403-4755-901A-528116C43FB8@oracle.com> <517EA40B-9500-4090-8F03-B4A9CECC62F8@oracle.com> <8B2F93E8-C3AC-49D2-B764-D4DD8A150A52@oracle.com> <786F370D-4A45-4F66-846C-A3437A162A65@oracle.com> In-Reply-To: <786F370D-4A45-4F66-846C-A3437A162A65@oracle.com> 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.7) x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 104baa75-4d00-4aae-c9f1-08d961993388 x-ms-traffictypediagnostic: CH0PR10MB5291: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7691; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: PmX4J2f0DJH0hMWWGs1zecViNW3Vpj/TKtKfAD372uzdx68V8kVZ3GQwiYSHx2ftp2EOBTMpvOWFbrVXSeN+0cilHhehRt8l5Fk5rmixVIDhUC5pTJp72BtMIil9iE4l5ViQNWl4UCQXKdnzPGHZvNKfN+JFc5RURgXuPflrOmMB/imYUii8EeQqacwWtWGw2IFmmFPwA2gVVIa1FhZAIKrrm/kxuyYw7g8sF8FiApFoJaoYp0s4n6XetR4koL1iQ42bHGgkDhw4NcseDGbSKc7nAdfVUihV0jCw73oDSsLS1/MQYmeoipJe4fnzOxeLriUgIiMDPcHYFKlJeBk7/WMK7hkdZwBQ5wxnrn7BMerLLAVDLMiYfjk7zxPwgI+bxkZSHZDub/PCeapeT7f5+d41ocvCdVRMrIl/E+cEtvF4lwwUKzfEhnvbY1hu20IEhhUercCWSk/KeeUSAXpUTvjyrRYZ+d9cplH0sCzKAzwYk5wZUuCNDgd5L6tJC6mup00ljcC9ngGnPA9fcq9tFGXSVxAgPUCehkJI7I8G/F4vhsXYa4+ETrC+Fg4AuNcup06s2GiIecX7vPk5SHNNZQn4QPlx/XCGTrnKxFjI/VnEml7UK86ZsqFoaeuKRj1psiE9wnyGuydH/WtubKw/jBU9+f5mWgEbwkZpnNZYCDycYELuHy8Q14Y3tv34nC96/uIFP5Xg4kgesBHRVyx8XG1BJexCrwq4zEZue7ke0ws= 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:(366004)(136003)(376002)(39860400002)(346002)(396003)(66946007)(33656002)(186003)(76116006)(91956017)(6506007)(86362001)(2616005)(6512007)(316002)(478600001)(6486002)(66446008)(53546011)(8676002)(44832011)(36756003)(8936002)(83380400001)(71200400001)(2906002)(6916009)(122000001)(4326008)(38100700002)(66556008)(54906003)(66476007)(38070700005)(64756008)(5660300002)(45980500001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?XlgDEP9gwHfJMgpp7evM9KS2XSv7jqL/O7A1qk+jtDLp5XrcFjAkbIWF72XY?= =?us-ascii?Q?k9N0TvDid086XjrLLASasd1163fEUwA1oCxEf2RXXvv/kfFYMgvGXYP5/duw?= =?us-ascii?Q?rr2CW2QliWTmkpr0oxxZGtT2GNa4KHcgPk4jMfh5VUHFMTnDwytB3b9i0Fda?= =?us-ascii?Q?rxDA6waF5ItNxZBApt25Q/a1HVNBNGkXwbdBFgBs3MDlcNqioudGiejoSvJy?= =?us-ascii?Q?1yJrhiEdtWR978+q87kzmunJgRA7btynAfG8ne9isFpEWJwUnkOBCI0ZtiZw?= =?us-ascii?Q?ZOVFQqPA5oqOKCzT4nDlO+gL3Z/PyLEhJxjnVCiyuh47Cq8TDjnexgKYJmQR?= =?us-ascii?Q?ZxMYinP3O12+3aY2gWk01roWaBBVnOBQacvSSh6lsl/7tgvDJMNxUL+b+u5I?= =?us-ascii?Q?vgIJodXPQJ2bvNoCFKD39vE+8+8cjOD3fKPbyvFI9KK0pvdhxI/uouPkkRLc?= =?us-ascii?Q?6AmYBFnOT+H6fvbJ7WyLikpD/J5o5vZlzQGlm47TGWrFKvpzHEB1SMFAiNTd?= =?us-ascii?Q?+gSTnAhRZVdeKilAQWSjKNJLbGVIS2R2W13aKCJAih8DvHsJwpl4+2hIkSyp?= =?us-ascii?Q?cLoQ+k38nW+8iTFqXaFG3XQ2fAofdw4BQ7rXt+nHGKdP666mD6wZMNN+GBgN?= =?us-ascii?Q?05PIl12NLEjZ6kSGzcQtlvxTIXAPxB9XGI92JHBL/s8ZJkTBY+nPm5E+aqZ2?= =?us-ascii?Q?+GZvS2o5udh/Lj0aGA0mTR95BzAyD2NZQss6WmyW4g9tU50aqg2yj0RoZQE/?= =?us-ascii?Q?t4P9CtXEH8KrDLTYZfeOGJq7Gix8+9m13aTeSMveQHvZLBWvPJhWAj9J7rdE?= =?us-ascii?Q?NNkSwAaNWtuXXSQqlQ0qdGU8ShUTpNCJFvOaCF5AG9HOueBzbcMMgBnjnZQR?= =?us-ascii?Q?DpxSGuSCTR2UpHJcSQtEAykE6swE847dV+TYwZy57tIhGxeWMmCEOGvvmCye?= =?us-ascii?Q?I5PXlKZRlaCXc42yIJNE+ceNKhYbkCgh6420CnzSkmAkRtStUYWOyifjZWok?= =?us-ascii?Q?mjtaXFqvVFKSmne/Po+KKT+x2uBUw/5ba5pINfL8XsCmk5soWbBDkikOsj7A?= =?us-ascii?Q?q9XiX4ZGY2TQYBDC/J6tlfcpT5fb0isGQ1xKkD7N14nWqox80YkZ3xxVwNOK?= =?us-ascii?Q?69f8xkfcxPTrQrkQUG7xoHs16zopKeS6+zrYqzdkPsPJAK7I/ARA4AdxJn1X?= =?us-ascii?Q?edRUDvhFF+Qfvm2rJSoUqmeIv5xs+PjXe4Txt+dDNnNfRN6qm1tQZxHbgGC3?= =?us-ascii?Q?JTJe25+SX5zhyvn+n0jH4t5hQnUERvu5uvGf2HcO51wwe+f4zHmLevvzOwS0?= =?us-ascii?Q?mLC6RlcM5hoPWT4TKbnZECiESRFWQJlwdnEVi7GssZRZ7Q6XeFjLYBvwsphh?= =?us-ascii?Q?beWCxCk=3D?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="us-ascii" Content-ID: <93D3539A0E728E44832FA82B13EA5397@namprd10.prod.outlook.com> Content-Transfer-Encoding: quoted-printable 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: 104baa75-4d00-4aae-c9f1-08d961993388 X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Aug 2021 16:08:07.1023 (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: QI2FvZ0Iq3QDJ/TFhUHwDSNqeWo7JViyr5j2rBMGxSVTpAKWjQLmq5MpP7w95L5kuC15ckKuE/AmUEXtPZyfUA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR10MB5291 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10079 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 spamscore=0 adultscore=0 suspectscore=0 phishscore=0 mlxlogscore=999 malwarescore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2108170099 X-Proofpoint-GUID: W00uyYZank2D0k9P9JRHarHQo7MWI6Nc X-Proofpoint-ORIG-GUID: W00uyYZank2D0k9P9JRHarHQo7MWI6Nc X-Spam-Status: No, score=-4.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_BL, RCVD_IN_MSPIKE_L3, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org 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: Tue, 17 Aug 2021 16:08:23 -0000 > On Aug 17, 2021, at 9:50 AM, Qing Zhao via Gcc-patches wrote: >=20 >=20 >=20 >> On Aug 17, 2021, at 3:29 AM, Richard Biener wrote: >>=20 >> On Mon, 16 Aug 2021, Qing Zhao wrote: >>=20 >>> My current code for expand_DEFERRED_INIT is like the following, could y= ou check and see whether there is any issue for it: >>>=20 >>> #define INIT_PATTERN_VALUE 0xFE >>> static void >>> expand_DEFERRED_INIT (internal_fn, gcall *stmt) >>> { >>> tree lhs =3D gimple_call_lhs (stmt); >>> tree var_size =3D gimple_call_arg (stmt, 0); >>> enum auto_init_type init_type >>> =3D (enum auto_init_type) TREE_INT_CST_LOW (gimple_call_arg (stmt, 1)= ); >>> bool is_vla =3D (bool) TREE_INT_CST_LOW (gimple_call_arg (stmt, 2)); >>>=20 >>> tree var_type =3D TREE_TYPE (lhs); >>> gcc_assert (init_type > AUTO_INIT_UNINITIALIZED); >>>=20 >>> if (is_vla || (!use_register_for_decl (lhs))) >>> { >>> if (TREE_CODE (lhs) =3D=3D SSA_NAME) >>> lhs =3D SSA_NAME_VAR (lhs); >>=20 >> this should not be necessary (in fact you shouldn't see a SSA_NAME >> here, if you do then using SSA_NAME_VAR is wrong) > You mean during RTL expansion phase, all SSA_NAMEs are gone already? Actually, the lhs could be SSA_NAME here,=20 Breakpoint 1, expand_DEFERRED_INIT (stmt=3D0x7fffe96ae348) at ../../latest-= gcc/gcc/internal-fn.c:3021 3021 mark_addressable (lhs); (gdb) call debug_tree(lhs) unit-size align:32 warn_if_not_align:0 symtab:0 alias-set 2 canonical-type 0x= 7fffe959b2a0 precision:32 pointer_to_this > visited var def_stmt temp1_5 =3D .DEFERRED_INIT (4, 2, 0, &"temp1"[0]); version:5> when I deleted: if (TREE_CODE (lhs) =3D=3D SSA_NAME lhs =3D SSA_NAME_VAR (lhs); Many testing cases failed with internal compiler error: /home/opc/Work/GCC/latest-gcc/gcc/testsuite/c-c++-common/auto-init-3.c:9:9:= internal compiler error: in expand_expr_addr_expr_1, at expr.c:8437 0xe237aa expand_expr_addr_expr_1 ../../latest-gcc/gcc/expr.c:8437 0xe24059 expand_expr_addr_expr ../../latest-gcc/gcc/expr.c:8525 0xe32b56 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modi= fier, rtx_def**, bool) ../../latest-gcc/gcc/expr.c:11741 0xe2da52 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modi= fier, rtx_def**, bool) ../../latest-gcc/gcc/expr.c:10777 0xe24706 expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifi= er, rtx_def**, bool) ../../latest-gcc/gcc/expr.c:8713 0xc13f15 expand_expr ../../latest-gcc/gcc/expr.h:301 0xc17acb get_memory_rtx ../../latest-gcc/gcc/builtins.c:1370 0xc2223d expand_builtin_memset_args ../../latest-gcc/gcc/builtins.c:4102 0xc21a20 expand_builtin_memset(tree_node*, rtx_def*, machine_mode) ../../latest-gcc/gcc/builtins.c:3886 0xfb5c85 expand_DEFERRED_INIT ../../latest-gcc/gcc/internal-fn.c:3031 So, did I do anything wrong? Qing=