From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id B796C3857402 for ; Thu, 9 Sep 2021 21:37:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org B796C3857402 Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 189LTVUV029758 for ; Thu, 9 Sep 2021 21:37:05 GMT Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by mx0b-00069f02.pphosted.com with ESMTP id 3aygy69yah-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 09 Sep 2021 21:37:05 +0000 Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 189LYstq025355 for ; Thu, 9 Sep 2021 21:37:03 GMT Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2042.outbound.protection.outlook.com [104.47.66.42]) by userp3020.oracle.com with ESMTP id 3axst62f03-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 09 Sep 2021 21:37:03 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dmOu6ZNCCQrSZ2qsKr8Ej/q2zGw2oOV4OTtKrv++f0AWOt1HGBrQt+URnNXCr05poXjrhDTqpAdgQkjLhPK18flqzu3BUtNZGh3YXj6eOOFv/xAFAugqW1IBRvDhlSvz9KmNHT2Cm8ijyHiKsnL1NrX1g5mbCD36JWNCndcEB1SVh8smvB/BiJacHUpDyvyBiHbG6HMxqkAOxyI4tBZjVdes9CZJuLbYDyoetvbBFFX59JpWmKAsX2BWT57loB1NaTnoJVvTFsrYPeC+/RB1OzdP6fFKN1eG++98XkXMHIUxv6m1+ArYaOHRadd08dx0pD/KZVMbsN/D76C+NrjsGA== 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; bh=37kkVjsEhNRlUD4XxtEBWiFxmKdGnYeMqRBexfB33XQ=; b=HhQt71HEBOVN6lcXK86ObtY53lEEc144Eb0UxqrHdVk7Vh+vbLgoLHgKE/4sqwi/CdyisbpcrLtkY8u27AJ5mSywRRbzVPFrz7s5aujYjuYdQY58Zx/YGwmxrVjFa3/OwHWCVgtteonTvM/sxb5iJhK5lKX3sALV7yr7Bs9jtgRXKyLDm45bGVD5A9ZcVK6x+6AsRoFSMKno3Rw1JDRsQkVKlO0AmT7EdRZonQvsQLGwm/p0kZjwl3jLHlDpunmXvateH8vLN8F2AtDAWk9K2IO8hOrk5UdCa6YgxMpg8tKYj2j/GdvJMILYv3fsp/2K6E1+gmU5ah2ikb0Xwn3dRw== 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 SA2PR10MB4458.namprd10.prod.outlook.com (2603:10b6:806:f8::24) by SN6PR10MB2607.namprd10.prod.outlook.com (2603:10b6:805:4e::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.17; Thu, 9 Sep 2021 21:37:01 +0000 Received: from SA2PR10MB4458.namprd10.prod.outlook.com ([fe80::1493:70de:28e4:3d3e]) by SA2PR10MB4458.namprd10.prod.outlook.com ([fe80::1493:70de:28e4:3d3e%4]) with mapi id 15.20.4500.017; Thu, 9 Sep 2021 21:37:01 +0000 From: David Faust To: gcc-patches@gcc.gnu.org Subject: [PATCH 0/3] bpf: add -mcpu and related feature options Date: Thu, 9 Sep 2021 14:36:42 -0700 Message-Id: <20210909213645.11605-1-david.faust@oracle.com> X-Mailer: git-send-email 2.31.1 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: SN4PR0401CA0042.namprd04.prod.outlook.com (2603:10b6:803:2a::28) To SA2PR10MB4458.namprd10.prod.outlook.com (2603:10b6:806:f8::24) MIME-Version: 1.0 Received: from sequence.us.oracle.com (2606:b400:8301:1041::12) by SN4PR0401CA0042.namprd04.prod.outlook.com (2603:10b6:803:2a::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14 via Frontend Transport; Thu, 9 Sep 2021 21:37:01 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e83fd0b2-3254-40a1-7b05-08d973d9f583 X-MS-TrafficTypeDiagnostic: SN6PR10MB2607: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8273; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aHWh71j3LIKNd84QIn4srWQjVddl7MO7AVLdpqk8qjpzPiyoN+YxI8BTZKrOTDWzD+lciKVWB+FzUd2djaWpRhu8rmPwtD9Dlo2M+uPPfcOJliRAhOQHf/8dBgdOtI/RTTSlnFGmDD7gIorY82hxacucrtjw1bnQay4buaOUsGb6QNNhaeflRQ+ZrjMPW2yB4zYQYQL/srIIiCr5H2JQG3jrL1fig18FKHjgQSZX2B1RAPoVBxxcDo0B8K+7O/EudL6BzVMJzn9AbZZkuP8ffeHqw+gpBFukT7MKOhfpQJdGKXA3x0OlD8W9fFqfEbAKp+mVkEPUnADI1UMxz9J6nNmaEAuwKt3cBKX0YsKjc7SedVrFE43ooaRLEwPAUJ0px6GUxwVBBCyjDca6LYCZFIpQ8yCg0OeXgcUJhGLGqrAT2mYbVechS5kfgGtvZpeUYJm8V69OUXG19G1e8lLkq0ji51Domivj89nZH+G7hSn95fymCeWmbcnbsyp5pxb70DfVIE9oYvGZzVMXveS5BIWWQfbOWu7kI+hTsG9EI86eM+rfLy51QlVlgL0/LjUatDqu/KGsTKqE01qa9a5BZoXWjeigAQZp8SJHZU8ErYICF7sh7P/O7F0qnAjuSdqDwpobzebWloebxetXZL+Oqw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA2PR10MB4458.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(39860400002)(396003)(346002)(376002)(136003)(366004)(2616005)(36756003)(316002)(86362001)(6666004)(52116002)(7696005)(478600001)(66946007)(66476007)(8676002)(38100700002)(8936002)(2906002)(83380400001)(44832011)(1076003)(186003)(5660300002)(6916009)(66556008)(6486002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ELYNHzjFOhMcmfmgdBr8V41wn0AoxQLspQCMgVo+qPkSSZSBWonlROdCIVVt?= =?us-ascii?Q?S/zfM4WJ2bHi8Ms+Rz+rWaBORAdIOPT/R2lyY94eJUoctsG1LSKwYtE/hfA5?= =?us-ascii?Q?pSEW6M5IIZfs35VWesoQdNgz4U8Fu9VO1OjFGh5e+D65Ax/iNnVQeVENnwqQ?= =?us-ascii?Q?5A2dtPqAiv+NWmy9dmVCRiAMf9QJ1fLoK3CpdF4eWU9NDez0q/KulbbYHxwO?= =?us-ascii?Q?ci+nR3qKakHYlazgzdOsgqBco/Ms7ltLENq5il9HO7KQ9FvgA5/ctlqt0B96?= =?us-ascii?Q?+07NamIYjHEfVKjdAUZvkrc9wBVankXEDpbJt7TezNcr3CPq77YaU2/b1zGx?= =?us-ascii?Q?/7reP6HnQ1vMz3NFt/GB60hv7qINJaEWw15+bmcXmpxSYd1YX3Me0ZhLndeX?= =?us-ascii?Q?PRZBuP2be1UrUqptuJF/VTFMYA5Vcw6WptFLf5ckC5YwkKmyZtHbXkrHlLx/?= =?us-ascii?Q?MdVcoYSov70dWFgKxKNN+JhAs8IXhAj0DCfo0OEuz4/l2FBm5+Jwa0dR3zQJ?= =?us-ascii?Q?WvlzJrESIdsH1InkbfjY6c/4xrpMwp9adUzwDcmiyQeQq6IvZN5ep/+RlBj0?= =?us-ascii?Q?IzZUSxqlESNwUz4Np3KHUEW8G7+MA56dG4QQDG7QKDowYgAautkgl73YsFoD?= =?us-ascii?Q?22tcbTgalSIesJp8JavCD/Cs0Do8rerFf3auheLyM4wW2KO35tMspHtsorsQ?= =?us-ascii?Q?QT4OO2PYd4HfIseFdGGtoprFIcBzs7DiNWB6GqwMSRnRNKt4ZBJcb6OLGrwL?= =?us-ascii?Q?yX2LFlrKrlv8ygduWVqctpLvJ2zv95zuKrL5fBO7FriUZa3pJD8Si/USxYr5?= =?us-ascii?Q?5aVdrsNTiZo92Dea+xlIEwv71+wyC6tQcARzUXHHTdgUwRja04wztil426XT?= =?us-ascii?Q?iMPoSblBJ+m397zpYQfs55bZjkN4J9AXa0hRFr9w6+Xs8IkmQRoMz/Uu1Mzs?= =?us-ascii?Q?TQnTfYUN7rxFmd8xgqbX8rCEYriTxPeesejepc1vpwrXO/Kb7EpY5apjGqqG?= =?us-ascii?Q?pd+l4ZJuHPXGwbiemfYpchyga1nixOxq9AZIvgTujrEtteaW+tBnf68mT3rR?= =?us-ascii?Q?T8WLwubodfEECou+fow4eAQCZyRNKyNOD/7flT+va3kQXOzUwrEMwruDHYMP?= =?us-ascii?Q?qyLG2JUqYvYtM6yc4gU7JxIBfbABxWnpBTVHlcnFj2K5/ytK5ujM9A09cxle?= =?us-ascii?Q?QCGfod05in8uAnfPmxUWZUlj99t76slQ0LXLqMdTkJOqlwjHYwf3O6qm7N2V?= =?us-ascii?Q?/YSxu1H4xOeCUN3PliBoKnH5l2iNT7SUPO1ZJCy3wCWne/iZTZeeRATkQHJp?= =?us-ascii?Q?jUhogvRGyjZ0QP25YccXlRO1pLVmW8JiSzDqP6SMTiTSsA=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: e83fd0b2-3254-40a1-7b05-08d973d9f583 X-MS-Exchange-CrossTenant-AuthSource: SA2PR10MB4458.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2021 21:37:01.5092 (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: La/neCVDVZjuCdALn64AJHmbdogAIUlm+/FEaOPZEHHiXlTZpyLxuEH9DHr9HZEv0gW576zxRDyhoGdxAgTsMw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR10MB2607 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10102 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 bulkscore=0 mlxlogscore=861 malwarescore=0 spamscore=0 mlxscore=0 suspectscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2109030001 definitions=main-2109090132 X-Proofpoint-GUID: _lx5JeuuEzaxu12L28TcaM7M5csz7McB X-Proofpoint-ORIG-GUID: _lx5JeuuEzaxu12L28TcaM7M5csz7McB X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_SHORT, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, 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: Thu, 09 Sep 2021 21:37:08 -0000 New instructions have been added over time to the eBPF ISA, but previously there has been no good method to select which version to target in GCC. This patch adds the following options to the BPF backend: -mcpu={v1, v2, v3} Select which version of the eBPF ISA to target. This enables or disables generation of certain instructions. The default is v3. -mjmpext Enable extra conditional branch instructions. Enabled for CPU v2 and above. -mjmp32 Enable 32-bit jump/branch instructions. Enabled for CPU v3 and above. -malu32 Enable 32-bit ALU instructions. Enabled for CPU v3 and above. Negative versions of -mjmpext, -mjmp32, and -malu32 options are also supported. David Faust (3): bpf: add -mcpu and related feature options bpf testsuite: add tests for new feature options doc: document BPF -mcpu and related options gcc/config/bpf/bpf-opts.h | 7 ++++ gcc/config/bpf/bpf-protos.h | 1 + gcc/config/bpf/bpf.c | 41 ++++++++++++++++++++ gcc/config/bpf/bpf.md | 44 +++++++++++---------- gcc/config/bpf/bpf.opt | 29 ++++++++++++++ gcc/doc/invoke.texi | 39 ++++++++++++++++++- gcc/testsuite/gcc.target/bpf/alu-1.c | 56 +++++++++++++++++++++++++++ gcc/testsuite/gcc.target/bpf/jmp-1.c | 57 ++++++++++++++++++++++++++++ 8 files changed, 253 insertions(+), 21 deletions(-) create mode 100644 gcc/testsuite/gcc.target/bpf/alu-1.c create mode 100644 gcc/testsuite/gcc.target/bpf/jmp-1.c -- 2.33.0