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 AD85F3858C66 for ; Fri, 24 Nov 2023 16:55:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org AD85F3858C66 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org AD85F3858C66 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1700844903; cv=pass; b=uSR17T2K8d5ICbmW5KiSCYjx5ljxrae+iqqxegi2uvYjp5M2MzwMFqrsHjsQ+2iMOwce9BFrDsKcxGQ8a1ArS8IcMhhxj8AEO8sIl6fljLjxUZluZFkzkojOPhOpnCzozD9FsSkuZ8gEHCgf93kYFZa+bhkCpE9INp/MoP5pdvM= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1700844903; c=relaxed/simple; bh=1b7KX76h4FxcvhjJJYdRjS+SvaZ45cx4OXrVdBgUvYw=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=IAw+0s1+DI7garbbC0V4kzu1COJ7SdO9w5SfG5UnexcsEXkiwpc8RiKAFH1lCJcVsR418KZXrtjEdgOfBb96yBtPHkELYUY6aTY4UFp1xLyxILYt7YktAsFTOozh9qOpYJmLtcqvJLrK++Dq5HbTXaG/nyfzJjmKtxclJbpZHDc= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3AOGINLk017463 for ; Fri, 24 Nov 2023 16:55:00 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : in-reply-to : references : date : message-id : content-type : mime-version; s=corp-2023-11-20; bh=XdHi6SWc/2AZoqaVFZkBIrk6EnzeBst57lMRYWoCddQ=; b=Jkq6lei9Qem/+wM7W9Ndb6vtGEN0D1t5QthMxZvRbwr1+Ga4pwXzuRiv3JTKW02uZPvW 1sPGKHnFibNDEzDcT4iFHfE8O1xJdtSPVC1WnAFlJomOuwU2Q1skBdMGHNVHyr45E3j6 +lvKHL9+2/+PpBY1BabjneAjQaHCFC9Ud1VLRrql/DUneDKHCY/xnBEuSDGN4X0Ksw/f cHHGCabzsPYz5tGEoomxgg75WPNxxj1ydEti1opugb34RT49w29SM5PKLUloGyMM9aNx rPFC1yFz68h16agn7GcL5r3xXPJb3zhY2h24DAR8OT/odgGtnRVxF+IismEmvHxQbX4L YQ== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3uen5bkgjy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Fri, 24 Nov 2023 16:55:00 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 3AOGrfK4023007 for ; Fri, 24 Nov 2023 16:54:59 GMT Received: from nam04-mw2-obe.outbound.protection.outlook.com (mail-mw2nam04lp2169.outbound.protection.outlook.com [104.47.73.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3uj3y6y0b1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Fri, 24 Nov 2023 16:54:58 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UVeAlGpjCS+eBZ3Zp3OCtPymWPMrQT14f2j2rtQXObVNpudFRSgty1K0IdXtsTP37AJGJ5hPSMLRdVKQPmV74hUUs8tpBG/Ns5xIGYRafx3/7Ev1QM/6O+IkEUSVp8Zo7be2Z8TKGrV4qnwwp4N3qvdzKu+e+nJjTtGxrJ8Qb8fDZ6O156zceArTm9yxcPt1ig9HTvoF/wfhXuWzkEd357vx0NXJqNoxNaeKXrDrn9tvRf5CI2juKGdOUl/JW/FmsVusoCMwJDrut/SoQIm30map8OQEJcBsimQUTPlyj+rQvU37NDRGtENdBtiQ02P9ca/I4oWSt9N/d5FpecF3Dw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=XdHi6SWc/2AZoqaVFZkBIrk6EnzeBst57lMRYWoCddQ=; b=Y5cqdmPudJSds637PjONlZZf/8eJL4bBtoTPXLZbZ9MG5Fo86VB5ZhLWOgYUmJewb9P2E3JD0FnQinmyLio7LZzbrHD/+tc/cVtJO5l4/8nfdf8tr5mGGNt9OMDJbEA9KuxDfnkpxbow30DHzmyO7Pxu3O2jjSo22WDwDEFzVcLcjR7e/ToDLxzftslSA7bls+9xZBiT8Sb2+vjlRGepvtKW2eaxfvL5O7WTZiMLwCoDNxUBJ9air4xKvuKBxlgSC0n2J2FMuU8V2Xr8iDu+JJjWzwhZCumIoKiOKFJ6rMVGSTKP9ENI3TU0uuV+uX7a3zo21YO0HgGo8xB0P0tPwA== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XdHi6SWc/2AZoqaVFZkBIrk6EnzeBst57lMRYWoCddQ=; b=xoCgmKJbMOwIKRUvZAebam/YVcKRMW6lOY1PSmdTW16vQ05JS1lyMt5KvKNnoL0Ne+JSQTYVXuP4MZjYnJGdQzXY44niwvbGdiQ4JXw6ErtYh2UcAhrs7yN9wDYREZpbm5YwoDZNoAhOhWeN83EfCBj6NVE7hip4ADtySJqjCQM= Received: from BYAPR10MB2888.namprd10.prod.outlook.com (2603:10b6:a03:88::32) by DS0PR10MB7399.namprd10.prod.outlook.com (2603:10b6:8:11c::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.21; Fri, 24 Nov 2023 16:54:56 +0000 Received: from BYAPR10MB2888.namprd10.prod.outlook.com ([fe80::ba16:f585:1052:a61c]) by BYAPR10MB2888.namprd10.prod.outlook.com ([fe80::ba16:f585:1052:a61c%5]) with mapi id 15.20.7025.021; Fri, 24 Nov 2023 16:54:54 +0000 From: "Jose E. Marchesi" To: Cupertino Miranda Cc: gcc-patches@gcc.gnu.org, elena.zannoni@oracle.com, david.faust@oracle.com Subject: Re: [PATCH] bpf: Forces __buildin_memcmp not to generate a call upto 1024 bytes. In-Reply-To: <20231113223723.11760-1-cupertino.miranda@oracle.com> (Cupertino Miranda's message of "Mon, 13 Nov 2023 22:37:23 +0000") References: <20231113223723.11760-1-cupertino.miranda@oracle.com> Date: Fri, 24 Nov 2023 17:54:50 +0100 Message-ID: <87plzzccrp.fsf@oracle.com> User-Agent: Gnus/5.13 (Gnus v5.13) Content-Type: text/plain X-ClientProxiedBy: AS4P191CA0018.EURP191.PROD.OUTLOOK.COM (2603:10a6:20b:5d9::14) To BYAPR10MB2888.namprd10.prod.outlook.com (2603:10b6:a03:88::32) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR10MB2888:EE_|DS0PR10MB7399:EE_ X-MS-Office365-Filtering-Correlation-Id: b97d2acb-e3f2-4339-686e-08dbed0e1531 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bu3mYOr3k+bsO7UK9B2flbZWEiNxLjDIVuH4e4iBKnZpuuqg86TDGzUmNogX8ran3JsWb6s+TGckNcWTNOgICfwcN55bSMzCrrGo+DuUCQp/1WS0mxrGMJjjKWwUvQEivfiNk7ZEzJnNWfFsCUr6yfqT0q/lQJsFPe3ujUCqnKOHBVylJl25uz5rzEdwN7/stsheEY8O8YdY86W+MX0nZVFN9B2gpJDYKTe+Bz6fZX+SoIM5QtNJXOsAUR9pKqgjV6YZ45qLkMZvKFX+gBiYdatPbXYrH/A1Z1SgVMu8JWioGwVjeHxZb/v/KRNLEdpxxJQ7yaikJKtaJxLvo3vDCEkh/hqzTBPX/+aIOwEsvHMcrQKNSUxfkrTpLdoeHNtsIW9bfFdm1rKL0nVu7eiWKbJJ+rrkHFDJZGUl+6V8Cgaei1irm9M5A3bnNNtRlAJxw1mA4O3Uyua6kVITuGqoV10L3e4PtilJkY2lar468Uqb2EsjC2psbgcs+NsLPcFgCAfzNvnS99pKP8alYXeP4nEwxAwcRbn2Ma9R2c1/Xqcf79MFeRlG/75jI89pYht+ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB2888.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(366004)(39860400002)(346002)(376002)(230922051799003)(1800799012)(186009)(451199024)(64100799003)(38100700002)(2616005)(107886003)(26005)(86362001)(8936002)(8676002)(6862004)(4326008)(6506007)(6512007)(478600001)(6486002)(6666004)(66946007)(6636002)(37006003)(66556008)(66476007)(316002)(2906002)(41300700001)(36756003)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?0FT4Aq6nMw3e3dG0sxo20l9JxNiUdQnAuUeDgCzvU84ILX1VVmjgoWvWaeUh?= =?us-ascii?Q?W6wh4V3juR29lirFnIsOk1FWD8MrX3A3jlL8MoRjYTzgS8SlEZw0PM0800SI?= =?us-ascii?Q?33h6BlAKWcuEtgIeJ8bxqTey3deLn0/dBsX1DTPGLi7y3uJeVC0D+lX2t0SK?= =?us-ascii?Q?b9gOlD8FCR4Qra82pedpcr5TGO2G71Xg3eMONNVDTk2rwMW3CrP3+2jVOy3X?= =?us-ascii?Q?ou560ebz3vaPsBknyubytrFL6z6i10xfPKVdEwe7L8T5RxMoSZuPYzkaJRYQ?= =?us-ascii?Q?fsIu1/wvgl4JNdhEcbeTl1iEvy7vWTNU1m5VKWogOcQtPHzq3E4rNBCAr8g+?= =?us-ascii?Q?EyPoxjB5DvfgrFhiVh6QZcZvqC3BO/bscV0lyerhGQiRIPgv0HY/G+DP5rT6?= =?us-ascii?Q?AqAe4sSTQA8R9JbGMopsiUnFp+DT3+yZOM7bxwKPLN6vIDusdTFurUhRiUOr?= =?us-ascii?Q?83tE0Qv1YR+2uawKuQFLKoDMRQS5TzhcT5vZjI8CcFXG40MrcY/EyFIdsOHv?= =?us-ascii?Q?ufROVXCz8LZbRpjv9uUbT4iHp/ls7lP7Iu/5Nqobe4Z93/BLKdsvL3Z8ny4g?= =?us-ascii?Q?auzbUIEVLnYYKcLPUNhk4f8A6rExjxQjAX0lBMTzr1K/+hrrEUUs6yZWican?= =?us-ascii?Q?fp4InG9OkcZ1BW4LOcYwSuAyrxIImofA9/I//TQ3LvuBF06bt/Ncos8v3wNH?= =?us-ascii?Q?384u5+dXQ/VwUp4WhItbZLF6yoIbN0bj6E08MC4OJaBuOkl1GwdWaLgKHGRO?= =?us-ascii?Q?OTvyAM1NeEYtABINYeWVWYn2YySFhDW9qU/p/ShhBZcIp3H2+NF0KxmwTO5w?= =?us-ascii?Q?2voOiKLRtJjyIeh3nI4Y/WLQ196Wifx9+Xvo/pETxbILaITpUf1DTgEYZSpT?= =?us-ascii?Q?Hzu6PxRQdCKMIU3iU8KUuoOkuYYQsLE0At9QZQuLJCLuLLIUcBDapNfhomTX?= =?us-ascii?Q?pPdqb4TZ6qhMI98t7EsedMlTcfaFtT8PvMGsZUTO0vSI1oW2pWqfKAtk+GJ/?= =?us-ascii?Q?zXLZyy2PcU0H3SzosMqq95nEyupPZMCDyjMua4B9XcKyn/yMHrovaLsrpFYT?= =?us-ascii?Q?3Xcv7sa6L5u5vSi0fMJCyjJfquZ4INmjAKIY/FBvDgtxKasd80TrRLh7zQKO?= =?us-ascii?Q?AGjLt7aJU4eDakxLc9CLd8m53d5sbfdYGkBFtOUfrnoIpV7t/kpIGtuQMhnQ?= =?us-ascii?Q?ScdMd4Vpff7QDZAXtqesMS6b8UA/IVvvSBOpDV/CID0ZotWSKuGmjfhPKcBu?= =?us-ascii?Q?Oe89H8QSWVIlaERzjTlx4j/b4hxETGMupbvA+w5j+2o6nbcPVqUWw1B1GO3h?= =?us-ascii?Q?BKi6Z9zPmOmjOJqrwcDpPaXMXS/SaCuaXwY3Lp4mk+7Z973DIp19jSCw2jXy?= =?us-ascii?Q?yRuZI/iRf/GkntUH+C0eUk8sZvM5uKqIJB4mxd0/hw0jCiWZSNQDtX8z1Ula?= =?us-ascii?Q?yfiMQtC4eBuENAHEgJzdPSl9p/7QRGNAOOilegn84dVYl59OBIeKuXnz5jFn?= =?us-ascii?Q?9CEaWHCZx2ZsYxQpITrn7Av5MOn4dgwC1O/9avyDWd4kNv7ZiBrRrZHAeIVC?= =?us-ascii?Q?e63OkKI909z2G2SUB3ULnXFof0Jx8kUaHv2O/xiVnmrc6BQLOyZiw0DCklNv?= =?us-ascii?Q?sg=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: UJGjseFDRMDrW8Sp34NxZIVXzAbbtrxo4l31O3HoZt1Z2SVIw2eP0GuALvuOV6TyPdi63MTnfO/hP54vMmeYa576ouNV658dRLRORhSmFrMJ+ubZd6Gzucj7SuxO611D5j/V9BWggyw/pImvgEtpKl5nXMmyF8CUA+NOihdo7KNt9iHktUzKJVDEk3IeFRDGs/LIpaQD2ZpbWo7teaumTTAjUhctOk4962wsizpaM19IouLln/0C9uK6CUsAXDkB8DVuHJQsP3+gb7+q2sgn++AcrGmpGOvc8UWDFTyutMIMF3pFaxbyOt0ZVPx45IMLXpr0VoJ3N/GXtNiLPWPpb3TJ0A2SpZnphKhwHiqUIhyz437Iw44tz1rBIqYOMwPCW4nDQ3JHeSSIDS0em5NJOvW3x9xHvdJti/sHo6Cp3tJydS1n5636vADaMkUowCp21/6kXlw4Zcc757c0re/S5NQ9+elItiC9/HZCX+Ag3m/fjnVCwjNAvH3Hp8woE6mACvDp84Qhy5I4a2xFTAwWfjilu0457xZTa7IL0rioODi06OJSZAgCY/g6O64x92nPi23c7a8ozDmK4cE4MtJnvpaPtQM6a3Ve2NMBsC3fBLCJ9us3dOme4F2XKuk1FfGm7H5o7JEUbZOoEnxAs+CoznyahZ/JINQLSHJ+RdNZ/gMbOUJ9Za475nhvborPyT3WX41L8Chvp8bs2sSAlj8d1nucHQUce96o3vF+w3/HkYF9WUalwuzxo1Fni/HtolOm X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b97d2acb-e3f2-4339-686e-08dbed0e1531 X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB2888.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Nov 2023 16:54:54.8099 (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: lb1r4TR53wJlBVXRwfu8domrJjv1/NkSWnk1orMekhMiy7isgHtDgG0HFcOv7906RRJ/AqKvZV7B40MhqZ4iRYXhGAG4ET0Il6l3d9KTrHM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR10MB7399 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.987,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-11-24_03,2023-11-22_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 malwarescore=0 mlxlogscore=999 suspectscore=0 mlxscore=0 adultscore=0 bulkscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311060000 definitions=main-2311240131 X-Proofpoint-GUID: A2fvqiCBCSArFYa8yg7tXKI_kqGzCNTb X-Proofpoint-ORIG-GUID: A2fvqiCBCSArFYa8yg7tXKI_kqGzCNTb X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi Cuper. Sorry, I missed this patch last week. This is OK. Thanks! > This patch forces __builtin_memcmp calls upto data sizes of 1024 to > become inline in caller. > This is a requirement by BPF and it mimics the default behaviour of the > clang BPF implementation. > > gcc/ChangeLog: > * config/bpf/bpf.cc (bpf_use_by_pieces_infrastructure_p): Added > function to bypass default behaviour. > * config/bpf/bpf.h (COMPARE_MAX_PIECES): Defined to 1024 bytes. > --- > gcc/config/bpf/bpf.cc | 16 ++++++++++++++++ > gcc/config/bpf/bpf.h | 5 +++++ > 2 files changed, 21 insertions(+) > > diff --git a/gcc/config/bpf/bpf.cc b/gcc/config/bpf/bpf.cc > index a0956a069729..764a3e487cb6 100644 > --- a/gcc/config/bpf/bpf.cc > +++ b/gcc/config/bpf/bpf.cc > @@ -1115,6 +1115,22 @@ bpf_small_register_classes_for_mode_p (machine_mode mode) > #define TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P \ > bpf_small_register_classes_for_mode_p > > +static bool > +bpf_use_by_pieces_infrastructure_p (unsigned HOST_WIDE_INT size, > + unsigned int align ATTRIBUTE_UNUSED, > + enum by_pieces_operation op, > + bool speed_p) > +{ > + if (op != COMPARE_BY_PIECES) > + return default_use_by_pieces_infrastructure_p (size, align, op, speed_p); > + > + return size <= COMPARE_MAX_PIECES; > +} > + > +#undef TARGET_USE_BY_PIECES_INFRASTRUCTURE_P > +#define TARGET_USE_BY_PIECES_INFRASTRUCTURE_P \ > + bpf_use_by_pieces_infrastructure_p > + > /* Finally, build the GCC target. */ > > struct gcc_target targetm = TARGET_INITIALIZER; > diff --git a/gcc/config/bpf/bpf.h b/gcc/config/bpf/bpf.h > index 82702aa7b6ba..1f177ec4c4ef 100644 > --- a/gcc/config/bpf/bpf.h > +++ b/gcc/config/bpf/bpf.h > @@ -489,6 +489,11 @@ enum reg_class > locations. */ > #define MOVE_MAX 8 > > +/* Allow upto 1024 bytes moves to occur using by_pieces > + infrastructure. This mimics clang behaviour when using > + __builtin_memcmp. */ > +#define COMPARE_MAX_PIECES 1024 > + > /* An alias for the machine mode for pointers. */ > #define Pmode DImode