From patchwork Mon Feb 6 12:37:55 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 93428 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1689386qgi; Mon, 6 Feb 2017 04:47:30 -0800 (PST) X-Received: by 10.55.75.143 with SMTP id y137mr8623756qka.39.1486385250144; Mon, 06 Feb 2017 04:47:30 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id c126si417115qkd.37.2017.02.06.04.47.29; Mon, 06 Feb 2017 04:47:30 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id AF05562DBC; Mon, 6 Feb 2017 12:47:29 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id A522F62F3B; Mon, 6 Feb 2017 12:39:32 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id E289A62DB8; Mon, 6 Feb 2017 12:38:47 +0000 (UTC) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50123.outbound.protection.outlook.com [40.107.5.123]) by lists.linaro.org (Postfix) with ESMTPS id B3AF562DB9 for ; Mon, 6 Feb 2017 12:38:29 +0000 (UTC) Received: from VI1PR07CA0060.eurprd07.prod.outlook.com (10.164.94.156) by AMSPR07MB279.eurprd07.prod.outlook.com (10.242.227.155) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Mon, 6 Feb 2017 12:38:28 +0000 Received: from AM1FFO11FD035.protection.gbl (2a01:111:f400:7e00::124) by VI1PR07CA0060.outlook.office365.com (2a01:111:e400:5967::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5 via Frontend Transport; Mon, 6 Feb 2017 12:38:27 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.36 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.36) by AM1FFO11FD035.mail.protection.outlook.com (10.174.64.224) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.7 via Frontend Transport; Mon, 6 Feb 2017 12:38:27 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34; Mon, 6 Feb 2017 14:38:24 +0200 Received: from mailrelay.int.nokia.com (10.130.128.30) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Mon, 6 Feb 2017 14:38:24 +0200 Received: from fihe3nok0735.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v16Cc4TR019857 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Mon, 6 Feb 2017 14:38:04 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v16Cc4V9019846 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Mon, 6 Feb 2017 14:38:04 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Mon, 6 Feb 2017 14:37:55 +0200 Message-ID: <1486384684-14761-2-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1486384684-14761-1-git-send-email-petri.savolainen@linaro.org> References: <1486384684-14761-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.36; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39450400003)(39860400002)(39410400002)(39850400002)(39840400002)(2980300002)(189002)(199003)(47776003)(50466002)(92566002)(48376002)(2950100002)(107886002)(6916009)(189998001)(110136003)(6666003)(68736007)(86362001)(305945005)(81156014)(81166006)(50226002)(356003)(33646002)(2906002)(76176999)(450100001)(8676002)(50986999)(97736004)(36756003)(8936002)(2351001)(105596002)(106466001)(5660300001)(22756006)(626004)(53936002)(77096006)(38730400001)(5003940100001); DIR:OUT; SFP:1102; SCL:1; SRVR:AMSPR07MB279; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; AM1FFO11FD035; 1:Yy9NjJNMnw8L07u5OgaHI2BwAZGcT+d4TNf0CGX8Qi6IdMnxQX3C1F7lWEEq5bBxB4qoAKLqL3vw/WjSfev6ZPEWckSmx529VHW3ajM8CytwkPV3+c7/FUXicdKDCfczuEhZPz0odvDbVzyWLb19nVjdCKRLaz+XgtxT8G+B1jsW90cCruGtEs9RBlXaADRNxnJzHHcXrsmP5H1Iy1F6uHnzsv9MKX58vXbp2oooGiIPDqV6CKzznK56Aqm/yY3PkyMCJZvMx9mk7uIDHUgV/J+uKZuFDRSPEX1StKT/JAnFmVwk2DjxD/5UhbHoRRVP0UC6j8uBi8VbBrHZfR7OmcyiDenFLypAW6c0NT6FKwKJhOUE9wVYBH1gIonlWQqiqb7Ld16YgHFWT62/27I29yOf8KXApQyzhz5lCyIcmOM0W4oUXUU16MlykM+Msy1BM0D1bRm889MGJgvAQJAPMxuhZZiiEaRulRqF9DVzsak= X-MS-Office365-Filtering-Correlation-Id: 48ed812c-a0a4-49af-ae1d-08d44e8d0c5e X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:AMSPR07MB279; X-Microsoft-Exchange-Diagnostics: 1; AMSPR07MB279; 3:hfHzx9K1JvK5HB3uMVywUdpa53pK2zBm3RCjC7tyv1vqRyqyJegJvYgvGzqx2/K72fnw/tuHC4QyBoA4SaiEDw0c/WQ9npwBsriuTKYedxmxXQyK1cfBgV9myRoBMo022K9tYRc67W1bHCIZGfB7QXOis7+5DHWTl2owfFPdYCuKDBPVxUD4PQSDsMQLVydglqgzc4WO62FhPXHz8PphkBAoe/MfiMJ8Mx6FQmF2evwM074f4NKwfdWjTMjIpDGy7mazaXIRLg6EUD/IYEs6h9jzxaSM5NWihGUzNOoZ3ZAOPcvqtCtNGnR42qdI30q6zPfg/x/2akPIRAui7WNKe/rJDyX1vK5gzcTqWnX+egxyIRTMv2ooHadgPn9GWTln; 25:B41Ow/2ws6sAKJjK8BJyr4HIyNxsqTtDvl5hBB3mJb7tppk3ToyYlvrbc1e087jCm66dufEBo3gOOkyd9RmB4xzLbfGnbLi28taq6Zna8v3jmWtRBnpe2W4Rsa/37OY2rmLWUK7ReUTOxRP089wRY0d/2u7sAVYOM03x+Cv1vVUIZeSiQnxqfxGkAn+Eq6QY/MXCRDKC3JZjeZY6WfaMEceZk2HKkaDHA07QI7gkRYCWbl2+AxHaMMGqTkjL6vWiRmPoqfl27vYAtpeY0AgzEOG2f6bFN3EhvkZbFM87R3xiVfo7ziSiJpWL+99+t0J6T0snZfnP6BaY32Nq1imT+fyvY9Rd7kATntz/rliY+ubT0fgmjZaCYTj5D4U1t6ilvP4egM1O+rASJmGu+HOKomI03aJtAEaHtFnGNOWrYNmoZN4zx/TqcAajxus4WNBkWlbmBjK++yMDZrZtfPKmaw== X-Microsoft-Exchange-Diagnostics: 1; AMSPR07MB279; 31:1jAcla7+2ONz4m/HBSTbn/LB97YOas9b2/wr6Mm1+1qywvWv5Ai1xNnT6XwCg1r7d/3pPWMTHm7S6JyDRJae+Xh8PEzLNuT5gXb/UFuw7KisnMyhbucswILe7zJXkxskGOybIPbxhHjYm7yExeE26jgz9oKbaqfE+K4LcSAYVMIcOc0hKiMESaTlYOYICDKJpzcDNB7Y5I3m/LYh3WfNBoSxCgqayCFrNPP6sx/Ss0/bBeB/1A/A+7TCn0XP16Pcv1RsdFthh6EYJ1DkrJ5lVw==; 20:7RvHWEe/ChY8wKP2Sgev74usHh62NbLuMED0uo30e5RIR4wxKgcGNaOMyCiU2jmQRVKMkuN6SH/0Xk9GhrHLK8DqDlrEiW8TwZAuD9LcUNyV/1tMuA6QXYm7KfCF5HEMy6xsJVvgdfhUzFosCZz1kWdt8OafgKrVEPY4WOcGNxl33D7sq3msboQEYr7s/LCB7eEdFjFvuRTHY0TDM02pCxJfX36slnm/ZR7tjp4qSdNu6YSDfvdbDbZ90zxJRRJn7PNrRUH9u6BoNsdXcFnYhirHDgeczH8t2hUtzF4oLbIQVqZWhRRMRr49Wq8fszXSCtQRRoU++bjYa3TTLikfttXd8Jxru5+iI3GhC+RpTqKxwldq30f/F5C1vzsuSgx6xAik5OSIUjkz9U8s6f7cH4r1zkePyUemV0ItNSn63KNCYSfbMOAfo0VJDnZk8wCig3AFPORgIahV5A42ktNmcQLJveBrUBbkY07BsocP/JfWaIPG9d9bFr98aO71r3zzjVWs59yLF6U7vnGJSYv5jYBef43+bIHrjpGAD+rrYpvAkbIAXHGMeP6VurkrAOkmgaeIl6HhFIdzWbQ4PakLwCIrxjP3HzvLI1mAr4or2tQ= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(278428928389397); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13018025)(20170203043)(13016025)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6041248)(20161123558025)(20161123555025)(20161123564025)(20161123560025)(20161123562025)(6072148); SRVR:AMSPR07MB279; BCL:0; PCL:0; RULEID:; SRVR:AMSPR07MB279; X-Microsoft-Exchange-Diagnostics: 1; AMSPR07MB279; 4:GXrMs7uJHLvu/O/LVlgHGKFC07FpfpIRliiWjdLoi/4qcoGHhu03eORgTUA+Efp66aUZKIRNDkqr9NaQQ5HS7vzcF6431M+9KUvDXmHx/7vT+J6kzbKXdR7CrHeUpmpt+JmFD/sNCeiiplr1hHzjiQrqaRgG9GcAYgFmxwwcwJjcrOfUpryPbHyTEfkZnjGOFlnsapgxJj5ACFMvm5WQDNsn/TXwjEcL2D0mrQbeXKC5aS+yBffE/DvwCrtpaxYWsBu8KbLHHu5WqGQ4Sorc6pI0SsSwIEUBISJ4hjDf9YO4ywRnnlPwNuFB/VCKUj9HBgUA2HmtkNUTFXFefVzPF9Ea0V4wHHnTEr+hGqB3z1fRAu4Q881mIyQnfvWXNjn7WnIimtuwjMFt735GM2D4mJX/KAyAblot2b7uGVhW6U97ZjpwWXxWTr0X3LZqBJd5lBzaZub1oLKsM17ASMsm6ihWE5ac1gBQ5U+dZyV+rBcdK6dvGSBRT7MbtwUQ4XlFa8ozf2Rfb/xxRPe0QAPV4YW0vizPbjpVFETzEOH6SpahdEhmEg+FXCCEiNRCTOobusqQeyOjommjWLNAVR0OLmzAppIfEX0N0IWKm8vooGqTpza+bVVWefDTPladSvT1ASsh8CKr6ZoykuRzXssS08iDgr2amuGQQs3aEp6d1UBUNMauUM95gT17k16+eEMxGgbVh0p+JRrhy60wn4lLT+1e/YuHd/RTWKGIlPTr6rA= X-Forefront-PRVS: 0210479ED8 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AMSPR07MB279; 23:1TDwffpMNHdu0FMhw96aOHcww14yf7ZS7vQYIsUZD0?= kZRWufdUilX943WqBAzj0oIrFeagpDPiWjr6F9FaH4lhpF8saFUmgT8k8NqzN8N6krqPfdjIE+NCMF5EUZKTo1L48lxgn6Sw4l17IrBrjitTsrzYvkwpy8Hb9RKO+hBa6XLTHlOPyVGkHO0LlnmbY0gqJ1f6xud64/2nSRoH1j164hqeMwJzskBo4BhQYjmbljp0GKmtpdkJTl+yAnKzoYh2RYI7JurBUbCFOLCXDLUWLV2MO5NkXVuQOMfQJDsxcGjjJIg/YvRz0ACBYCwT1e6E8NlUlRwBsGEmYKVu1Y7eZ5iilKTyj2dw5OxgBB+ZUjHB+DSVDOQ4TgOh7YUECj0WcdYMZgRuiolXUEHz3fMdfPh146Bwjcw9GlLLPjyvzjJAytNseQMxDJAq0uxMKnrX72q2Sf+yXOEeZ6n8/0YhAHDgfwUTzwGgC/oHOO1a2l8dc3KRkaC7R0JcLLNwOq3DyZWYznJVggO2JkZcMYX/khsH3nsaYtjBNupE8/fCUeZ/fTYRtTT4fG4y7oMcHVExPlnhJDxzM3lMyAJIPAguUN5aJkLz8N6QGLDkElyaIWorNPk3JRki7JaeeNypmLFlw/CnEPSU6Wthplzqf9G0IFkp5TagzZqPguJ2BGCApo99eFjG70Y64P5J3FWOWza1FDLLyZz3C4amtVzwl0hEHzFqUdH3lYWhDOFTWsYGcOS1JmGs9vfu44x7utaMwb3VGXCJgVraohvzz877aTimpUw7JU0Odp+uNkYfJaYnJwaZfoBdc2nwJzOFXvrExjSR5XFyf6uNzms+0JTqqvuZUnbpnBA12ZVMb2UKU4cC6eVO/ggK5G0G/I5t9uS95EjMeLiyS0f6c2FBTSAn6yA5TcXlM0h+gH74zVoR/7rFq4T3juak0VMmwKl19ZkI3LOH1UrVRerS0dbHGGeemeSnxOzD9pPpiQfGzQIWA4Qh4FaWaF7CEeuxQuK7Jwq6mEKhMZbXEafpL5yet9M46DcCdRsEDtXA491f6PJI660Hyn/UrIyJYmbC9Tzfrc3DV04vxlXTxbe6Em9Oo0I+Zieo+jJk/FOj3W3jWc5YbKMcJbV0ftnSS99hRTYQ6/iIbV X-Microsoft-Exchange-Diagnostics: 1; AMSPR07MB279; 6:hk2P1REuykXiRZpX1KSjoGZMf5JdpIROh3+RsOtWuOICnQvfdFGaMbmwu69m65Ux6pfLKR/j6PxK9NsnGjCTMKSh9ou5dICr0j1hrLOdliEf2xSOrEFVoyyL15QcivXRHeRAS+bbCX3OnbYzAlYL7VW1RShP/6qvaU23GcOw3UwhnQWhujLAZtRmaR6pW8f82uQ0usOfaKNhWB8zf+kCmcOf02WTauEWErnkkh5XxC7yGpXZQqrN6qyWNBrS9QlLxtesjekfbLqXarSV5mxI9G18lFfcraUb9TehV0bW9b6LBGl27+nap6dRFdbcFsKNmsvX2IXfUAeukBTdLeqRS0NM1UHTA+ZlPzyXNExMjBZlZbN9kFv7VHo4CWrs1OUiMjAN/2/Y5YUeO5meDlm6sT/eiBe5ruY7O6/tDoLffdE=; 5:cOoEuVbWE+R1dDXKKnXT79Um+/Zi0xFWnnx5WVfMewsozL4w2oVHLHu14hShSiNHLFwiPVKq1dvzIv+xvZHhLhKEEQudkhsWXLVaIbYCFZdCAUO3NnCyyY4NTdwlCvtRfY1UogUDc/8AI53T7CHC9Q==; 24:3D5GOJQvtSbkE4eAfuETAlfGSu8REJyHvYKoD52Nbzo9KHnMzspQ8ge2N6GSCCPG7vTnZ96GSF0nQiDfEyGvpSCtw3Rlpa0gRvBf1fVGwVc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AMSPR07MB279; 7:QcoCP0tuzV1sc4A+OHvNa/sYmmR8DhYjlCP/lwPnQAJ5co7f/2P+Ov0k7k/LdjDvCTzvdN/o4lOGi0WiQOXbMUM8aRvg+YJRDbpJ9neaEI0J1Lv4QcO+MlZ5L7uWsBA6rPCx09LBlLihOfXSsb5mhe2X0WoUDHKzRywArtLvHUwq2sXZbLOmjxrRlumqZdaL+Bd69kz0WS58q8+Z9EjyLmBSL8GV6J2AKItYUrEoLRhR0m3jj7Q6KRc2EQfLle2BvIuUbTM4EAw+qlxLZK+OYhjpBiVLDdsYCjMINGUJjQ3pWBDwBLdIt2ihCJwtYiy3g9qCvuXZp9f7NZ171op+V9J22a8h3JZEy/Zbz7fVW59w0FqrBU8rmwudewe5e/wGlElvNhAVlkzS3vUzeKAnUuYIL8U+g5O0BiJek4YRnTiTlmT3RloETbTwkxx6Uojr/3JQXNrWtXDHOKhMW1vrrRH7IZ7ff/hqvQdh4AV54VCbCShO39a75EVXkvnWhp3SB7k6THd0kWx9Z9FEjJTEiA== X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2017 12:38:27.0345 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.36]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AMSPR07MB279 Subject: [lng-odp] [PATCH 01/10] linux-gen: inline: rename _STATIC to _ODP_INLINE X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" This define is visible to applications through API headers. Use _ODP prefix to avoid name space collision. Also "inline" describes better the purpose of the macro than "static". Signed-off-by: Petri Savolainen --- .../include/odp/api/plat/atomic_inlines.h | 114 +++++++++++---------- .../include/odp/api/plat/byteorder_inlines.h | 24 ++--- .../include/odp/api/plat/static_inline.h.in | 8 +- .../include/odp/api/plat/std_clib_inlines.h | 6 +- .../include/odp/api/plat/sync_inlines.h | 6 +- 5 files changed, 82 insertions(+), 76 deletions(-) -- 2.8.1 diff --git a/platform/linux-generic/include/odp/api/plat/atomic_inlines.h b/platform/linux-generic/include/odp/api/plat/atomic_inlines.h index 4471f2e..03b2884 100644 --- a/platform/linux-generic/include/odp/api/plat/atomic_inlines.h +++ b/platform/linux-generic/include/odp/api/plat/atomic_inlines.h @@ -13,63 +13,65 @@ #ifndef _ODP_PLAT_ATOMIC_INLINES_H_ #define _ODP_PLAT_ATOMIC_INLINES_H_ -_STATIC void odp_atomic_init_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE void odp_atomic_init_u32(odp_atomic_u32_t *atom, uint32_t val) { __atomic_store_n(&atom->v, val, __ATOMIC_RELAXED); } -_STATIC uint32_t odp_atomic_load_u32(odp_atomic_u32_t *atom) +_ODP_INLINE uint32_t odp_atomic_load_u32(odp_atomic_u32_t *atom) { return __atomic_load_n(&atom->v, __ATOMIC_RELAXED); } -_STATIC void odp_atomic_store_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE void odp_atomic_store_u32(odp_atomic_u32_t *atom, uint32_t val) { __atomic_store_n(&atom->v, val, __ATOMIC_RELAXED); } -_STATIC uint32_t odp_atomic_fetch_add_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE uint32_t odp_atomic_fetch_add_u32(odp_atomic_u32_t *atom, + uint32_t val) { return __atomic_fetch_add(&atom->v, val, __ATOMIC_RELAXED); } -_STATIC void odp_atomic_add_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE void odp_atomic_add_u32(odp_atomic_u32_t *atom, uint32_t val) { (void)__atomic_fetch_add(&atom->v, val, __ATOMIC_RELAXED); } -_STATIC uint32_t odp_atomic_fetch_sub_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE uint32_t odp_atomic_fetch_sub_u32(odp_atomic_u32_t *atom, + uint32_t val) { return __atomic_fetch_sub(&atom->v, val, __ATOMIC_RELAXED); } -_STATIC void odp_atomic_sub_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE void odp_atomic_sub_u32(odp_atomic_u32_t *atom, uint32_t val) { (void)__atomic_fetch_sub(&atom->v, val, __ATOMIC_RELAXED); } -_STATIC uint32_t odp_atomic_fetch_inc_u32(odp_atomic_u32_t *atom) +_ODP_INLINE uint32_t odp_atomic_fetch_inc_u32(odp_atomic_u32_t *atom) { return __atomic_fetch_add(&atom->v, 1, __ATOMIC_RELAXED); } -_STATIC void odp_atomic_inc_u32(odp_atomic_u32_t *atom) +_ODP_INLINE void odp_atomic_inc_u32(odp_atomic_u32_t *atom) { (void)__atomic_fetch_add(&atom->v, 1, __ATOMIC_RELAXED); } -_STATIC uint32_t odp_atomic_fetch_dec_u32(odp_atomic_u32_t *atom) +_ODP_INLINE uint32_t odp_atomic_fetch_dec_u32(odp_atomic_u32_t *atom) { return __atomic_fetch_sub(&atom->v, 1, __ATOMIC_RELAXED); } -_STATIC void odp_atomic_dec_u32(odp_atomic_u32_t *atom) +_ODP_INLINE void odp_atomic_dec_u32(odp_atomic_u32_t *atom) { (void)__atomic_fetch_sub(&atom->v, 1, __ATOMIC_RELAXED); } -_STATIC int odp_atomic_cas_u32(odp_atomic_u32_t *atom, uint32_t *old_val, - uint32_t new_val) +_ODP_INLINE int odp_atomic_cas_u32(odp_atomic_u32_t *atom, uint32_t *old_val, + uint32_t new_val) { return __atomic_compare_exchange_n(&atom->v, old_val, new_val, 0 /* strong */, @@ -77,12 +79,13 @@ _STATIC int odp_atomic_cas_u32(odp_atomic_u32_t *atom, uint32_t *old_val, __ATOMIC_RELAXED); } -_STATIC uint32_t odp_atomic_xchg_u32(odp_atomic_u32_t *atom, uint32_t new_val) +_ODP_INLINE uint32_t odp_atomic_xchg_u32(odp_atomic_u32_t *atom, + uint32_t new_val) { return __atomic_exchange_n(&atom->v, new_val, __ATOMIC_RELAXED); } -_STATIC void odp_atomic_max_u32(odp_atomic_u32_t *atom, uint32_t new_max) +_ODP_INLINE void odp_atomic_max_u32(odp_atomic_u32_t *atom, uint32_t new_max) { uint32_t old_val; @@ -94,7 +97,7 @@ _STATIC void odp_atomic_max_u32(odp_atomic_u32_t *atom, uint32_t new_max) } } -_STATIC void odp_atomic_min_u32(odp_atomic_u32_t *atom, uint32_t new_min) +_ODP_INLINE void odp_atomic_min_u32(odp_atomic_u32_t *atom, uint32_t new_min) { uint32_t old_val; @@ -106,7 +109,7 @@ _STATIC void odp_atomic_min_u32(odp_atomic_u32_t *atom, uint32_t new_min) } } -_STATIC void odp_atomic_init_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE void odp_atomic_init_u64(odp_atomic_u64_t *atom, uint64_t val) { atom->v = val; #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 @@ -114,7 +117,7 @@ _STATIC void odp_atomic_init_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC uint64_t odp_atomic_load_u64(odp_atomic_u64_t *atom) +_ODP_INLINE uint64_t odp_atomic_load_u64(odp_atomic_u64_t *atom) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 return ATOMIC_OP(atom, (void)0); @@ -123,7 +126,7 @@ _STATIC uint64_t odp_atomic_load_u64(odp_atomic_u64_t *atom) #endif } -_STATIC void odp_atomic_store_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE void odp_atomic_store_u64(odp_atomic_u64_t *atom, uint64_t val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 (void)ATOMIC_OP(atom, atom->v = val); @@ -132,7 +135,8 @@ _STATIC void odp_atomic_store_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC uint64_t odp_atomic_fetch_add_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE uint64_t odp_atomic_fetch_add_u64(odp_atomic_u64_t *atom, + uint64_t val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 return ATOMIC_OP(atom, atom->v += val); @@ -141,7 +145,7 @@ _STATIC uint64_t odp_atomic_fetch_add_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC void odp_atomic_add_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE void odp_atomic_add_u64(odp_atomic_u64_t *atom, uint64_t val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 (void)ATOMIC_OP(atom, atom->v += val); @@ -150,7 +154,8 @@ _STATIC void odp_atomic_add_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC uint64_t odp_atomic_fetch_sub_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE uint64_t odp_atomic_fetch_sub_u64(odp_atomic_u64_t *atom, + uint64_t val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 return ATOMIC_OP(atom, atom->v -= val); @@ -159,7 +164,7 @@ _STATIC uint64_t odp_atomic_fetch_sub_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC void odp_atomic_sub_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE void odp_atomic_sub_u64(odp_atomic_u64_t *atom, uint64_t val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 (void)ATOMIC_OP(atom, atom->v -= val); @@ -168,7 +173,7 @@ _STATIC void odp_atomic_sub_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC uint64_t odp_atomic_fetch_inc_u64(odp_atomic_u64_t *atom) +_ODP_INLINE uint64_t odp_atomic_fetch_inc_u64(odp_atomic_u64_t *atom) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 return ATOMIC_OP(atom, atom->v++); @@ -177,7 +182,7 @@ _STATIC uint64_t odp_atomic_fetch_inc_u64(odp_atomic_u64_t *atom) #endif } -_STATIC void odp_atomic_inc_u64(odp_atomic_u64_t *atom) +_ODP_INLINE void odp_atomic_inc_u64(odp_atomic_u64_t *atom) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 (void)ATOMIC_OP(atom, atom->v++); @@ -186,7 +191,7 @@ _STATIC void odp_atomic_inc_u64(odp_atomic_u64_t *atom) #endif } -_STATIC uint64_t odp_atomic_fetch_dec_u64(odp_atomic_u64_t *atom) +_ODP_INLINE uint64_t odp_atomic_fetch_dec_u64(odp_atomic_u64_t *atom) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 return ATOMIC_OP(atom, atom->v--); @@ -195,7 +200,7 @@ _STATIC uint64_t odp_atomic_fetch_dec_u64(odp_atomic_u64_t *atom) #endif } -_STATIC void odp_atomic_dec_u64(odp_atomic_u64_t *atom) +_ODP_INLINE void odp_atomic_dec_u64(odp_atomic_u64_t *atom) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 (void)ATOMIC_OP(atom, atom->v--); @@ -204,8 +209,8 @@ _STATIC void odp_atomic_dec_u64(odp_atomic_u64_t *atom) #endif } -_STATIC int odp_atomic_cas_u64(odp_atomic_u64_t *atom, uint64_t *old_val, - uint64_t new_val) +_ODP_INLINE int odp_atomic_cas_u64(odp_atomic_u64_t *atom, uint64_t *old_val, + uint64_t new_val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 int ret; @@ -219,7 +224,8 @@ _STATIC int odp_atomic_cas_u64(odp_atomic_u64_t *atom, uint64_t *old_val, #endif } -_STATIC uint64_t odp_atomic_xchg_u64(odp_atomic_u64_t *atom, uint64_t new_val) +_ODP_INLINE uint64_t odp_atomic_xchg_u64(odp_atomic_u64_t *atom, + uint64_t new_val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 return ATOMIC_OP(atom, atom->v = new_val); @@ -228,7 +234,7 @@ _STATIC uint64_t odp_atomic_xchg_u64(odp_atomic_u64_t *atom, uint64_t new_val) #endif } -_STATIC void odp_atomic_max_u64(odp_atomic_u64_t *atom, uint64_t new_max) +_ODP_INLINE void odp_atomic_max_u64(odp_atomic_u64_t *atom, uint64_t new_max) { uint64_t old_val; @@ -240,7 +246,7 @@ _STATIC void odp_atomic_max_u64(odp_atomic_u64_t *atom, uint64_t new_max) } } -_STATIC void odp_atomic_min_u64(odp_atomic_u64_t *atom, uint64_t new_min) +_ODP_INLINE void odp_atomic_min_u64(odp_atomic_u64_t *atom, uint64_t new_min) { uint64_t old_val; @@ -252,28 +258,28 @@ _STATIC void odp_atomic_min_u64(odp_atomic_u64_t *atom, uint64_t new_min) } } -_STATIC uint32_t odp_atomic_load_acq_u32(odp_atomic_u32_t *atom) +_ODP_INLINE uint32_t odp_atomic_load_acq_u32(odp_atomic_u32_t *atom) { return __atomic_load_n(&atom->v, __ATOMIC_ACQUIRE); } -_STATIC void odp_atomic_store_rel_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE void odp_atomic_store_rel_u32(odp_atomic_u32_t *atom, uint32_t val) { __atomic_store_n(&atom->v, val, __ATOMIC_RELEASE); } -_STATIC void odp_atomic_add_rel_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE void odp_atomic_add_rel_u32(odp_atomic_u32_t *atom, uint32_t val) { (void)__atomic_fetch_add(&atom->v, val, __ATOMIC_RELEASE); } -_STATIC void odp_atomic_sub_rel_u32(odp_atomic_u32_t *atom, uint32_t val) +_ODP_INLINE void odp_atomic_sub_rel_u32(odp_atomic_u32_t *atom, uint32_t val) { (void)__atomic_fetch_sub(&atom->v, val, __ATOMIC_RELEASE); } -_STATIC int odp_atomic_cas_acq_u32(odp_atomic_u32_t *atom, - uint32_t *old_val, uint32_t new_val) +_ODP_INLINE int odp_atomic_cas_acq_u32(odp_atomic_u32_t *atom, + uint32_t *old_val, uint32_t new_val) { return __atomic_compare_exchange_n(&atom->v, old_val, new_val, 0 /* strong */, @@ -281,8 +287,8 @@ _STATIC int odp_atomic_cas_acq_u32(odp_atomic_u32_t *atom, __ATOMIC_RELAXED); } -_STATIC int odp_atomic_cas_rel_u32(odp_atomic_u32_t *atom, - uint32_t *old_val, uint32_t new_val) +_ODP_INLINE int odp_atomic_cas_rel_u32(odp_atomic_u32_t *atom, + uint32_t *old_val, uint32_t new_val) { return __atomic_compare_exchange_n(&atom->v, old_val, new_val, 0 /* strong */, @@ -290,9 +296,9 @@ _STATIC int odp_atomic_cas_rel_u32(odp_atomic_u32_t *atom, __ATOMIC_RELAXED); } -_STATIC int odp_atomic_cas_acq_rel_u32(odp_atomic_u32_t *atom, - uint32_t *old_val, - uint32_t new_val) +_ODP_INLINE int odp_atomic_cas_acq_rel_u32(odp_atomic_u32_t *atom, + uint32_t *old_val, + uint32_t new_val) { return __atomic_compare_exchange_n(&atom->v, old_val, new_val, 0 /* strong */, @@ -300,7 +306,7 @@ _STATIC int odp_atomic_cas_acq_rel_u32(odp_atomic_u32_t *atom, __ATOMIC_RELAXED); } -_STATIC uint64_t odp_atomic_load_acq_u64(odp_atomic_u64_t *atom) +_ODP_INLINE uint64_t odp_atomic_load_acq_u64(odp_atomic_u64_t *atom) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 return ATOMIC_OP(atom, (void)0); @@ -309,7 +315,7 @@ _STATIC uint64_t odp_atomic_load_acq_u64(odp_atomic_u64_t *atom) #endif } -_STATIC void odp_atomic_store_rel_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE void odp_atomic_store_rel_u64(odp_atomic_u64_t *atom, uint64_t val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 (void)ATOMIC_OP(atom, atom->v = val); @@ -318,7 +324,7 @@ _STATIC void odp_atomic_store_rel_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC void odp_atomic_add_rel_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE void odp_atomic_add_rel_u64(odp_atomic_u64_t *atom, uint64_t val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 (void)ATOMIC_OP(atom, atom->v += val); @@ -327,7 +333,7 @@ _STATIC void odp_atomic_add_rel_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC void odp_atomic_sub_rel_u64(odp_atomic_u64_t *atom, uint64_t val) +_ODP_INLINE void odp_atomic_sub_rel_u64(odp_atomic_u64_t *atom, uint64_t val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 (void)ATOMIC_OP(atom, atom->v -= val); @@ -336,8 +342,8 @@ _STATIC void odp_atomic_sub_rel_u64(odp_atomic_u64_t *atom, uint64_t val) #endif } -_STATIC int odp_atomic_cas_acq_u64(odp_atomic_u64_t *atom, - uint64_t *old_val, uint64_t new_val) +_ODP_INLINE int odp_atomic_cas_acq_u64(odp_atomic_u64_t *atom, + uint64_t *old_val, uint64_t new_val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 int ret; @@ -351,8 +357,8 @@ _STATIC int odp_atomic_cas_acq_u64(odp_atomic_u64_t *atom, #endif } -_STATIC int odp_atomic_cas_rel_u64(odp_atomic_u64_t *atom, - uint64_t *old_val, uint64_t new_val) +_ODP_INLINE int odp_atomic_cas_rel_u64(odp_atomic_u64_t *atom, + uint64_t *old_val, uint64_t new_val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 int ret; @@ -366,9 +372,9 @@ _STATIC int odp_atomic_cas_rel_u64(odp_atomic_u64_t *atom, #endif } -_STATIC int odp_atomic_cas_acq_rel_u64(odp_atomic_u64_t *atom, - uint64_t *old_val, - uint64_t new_val) +_ODP_INLINE int odp_atomic_cas_acq_rel_u64(odp_atomic_u64_t *atom, + uint64_t *old_val, + uint64_t new_val) { #if __GCC_ATOMIC_LLONG_LOCK_FREE < 2 int ret; diff --git a/platform/linux-generic/include/odp/api/plat/byteorder_inlines.h b/platform/linux-generic/include/odp/api/plat/byteorder_inlines.h index c91a3b1..e781890 100644 --- a/platform/linux-generic/include/odp/api/plat/byteorder_inlines.h +++ b/platform/linux-generic/include/odp/api/plat/byteorder_inlines.h @@ -21,7 +21,7 @@ extern "C" { * @{ */ -_STATIC uint16_t odp_be_to_cpu_16(odp_u16be_t be16) +_ODP_INLINE uint16_t odp_be_to_cpu_16(odp_u16be_t be16) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return __odp_builtin_bswap16((__odp_force uint16_t)be16); @@ -30,7 +30,7 @@ _STATIC uint16_t odp_be_to_cpu_16(odp_u16be_t be16) #endif } -_STATIC uint32_t odp_be_to_cpu_32(odp_u32be_t be32) +_ODP_INLINE uint32_t odp_be_to_cpu_32(odp_u32be_t be32) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return __builtin_bswap32((__odp_force uint32_t)be32); @@ -39,7 +39,7 @@ _STATIC uint32_t odp_be_to_cpu_32(odp_u32be_t be32) #endif } -_STATIC uint64_t odp_be_to_cpu_64(odp_u64be_t be64) +_ODP_INLINE uint64_t odp_be_to_cpu_64(odp_u64be_t be64) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return __builtin_bswap64((__odp_force uint64_t)be64); @@ -48,7 +48,7 @@ _STATIC uint64_t odp_be_to_cpu_64(odp_u64be_t be64) #endif } -_STATIC odp_u16be_t odp_cpu_to_be_16(uint16_t cpu16) +_ODP_INLINE odp_u16be_t odp_cpu_to_be_16(uint16_t cpu16) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force odp_u16be_t)__odp_builtin_bswap16(cpu16); @@ -57,7 +57,7 @@ _STATIC odp_u16be_t odp_cpu_to_be_16(uint16_t cpu16) #endif } -_STATIC odp_u32be_t odp_cpu_to_be_32(uint32_t cpu32) +_ODP_INLINE odp_u32be_t odp_cpu_to_be_32(uint32_t cpu32) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force odp_u32be_t)__builtin_bswap32(cpu32); @@ -66,7 +66,7 @@ _STATIC odp_u32be_t odp_cpu_to_be_32(uint32_t cpu32) #endif } -_STATIC odp_u64be_t odp_cpu_to_be_64(uint64_t cpu64) +_ODP_INLINE odp_u64be_t odp_cpu_to_be_64(uint64_t cpu64) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force odp_u64be_t)__builtin_bswap64(cpu64); @@ -75,7 +75,7 @@ _STATIC odp_u64be_t odp_cpu_to_be_64(uint64_t cpu64) #endif } -_STATIC uint16_t odp_le_to_cpu_16(odp_u16le_t le16) +_ODP_INLINE uint16_t odp_le_to_cpu_16(odp_u16le_t le16) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force uint16_t)le16; @@ -84,7 +84,7 @@ _STATIC uint16_t odp_le_to_cpu_16(odp_u16le_t le16) #endif } -_STATIC uint32_t odp_le_to_cpu_32(odp_u32le_t le32) +_ODP_INLINE uint32_t odp_le_to_cpu_32(odp_u32le_t le32) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force uint32_t)le32; @@ -93,7 +93,7 @@ _STATIC uint32_t odp_le_to_cpu_32(odp_u32le_t le32) #endif } -_STATIC uint64_t odp_le_to_cpu_64(odp_u64le_t le64) +_ODP_INLINE uint64_t odp_le_to_cpu_64(odp_u64le_t le64) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force uint64_t)le64; @@ -102,7 +102,7 @@ _STATIC uint64_t odp_le_to_cpu_64(odp_u64le_t le64) #endif } -_STATIC odp_u16le_t odp_cpu_to_le_16(uint16_t cpu16) +_ODP_INLINE odp_u16le_t odp_cpu_to_le_16(uint16_t cpu16) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force odp_u16le_t)cpu16; @@ -111,7 +111,7 @@ _STATIC odp_u16le_t odp_cpu_to_le_16(uint16_t cpu16) #endif } -_STATIC odp_u32le_t odp_cpu_to_le_32(uint32_t cpu32) +_ODP_INLINE odp_u32le_t odp_cpu_to_le_32(uint32_t cpu32) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force odp_u32le_t)cpu32; @@ -120,7 +120,7 @@ _STATIC odp_u32le_t odp_cpu_to_le_32(uint32_t cpu32) #endif } -_STATIC odp_u64le_t odp_cpu_to_le_64(uint64_t cpu64) +_ODP_INLINE odp_u64le_t odp_cpu_to_le_64(uint64_t cpu64) { #if ODP_BYTE_ORDER == ODP_LITTLE_ENDIAN return (__odp_force odp_u64le_t)cpu64; diff --git a/platform/linux-generic/include/odp/api/plat/static_inline.h.in b/platform/linux-generic/include/odp/api/plat/static_inline.h.in index 4562a22..3cf0043 100644 --- a/platform/linux-generic/include/odp/api/plat/static_inline.h.in +++ b/platform/linux-generic/include/odp/api/plat/static_inline.h.in @@ -25,15 +25,15 @@ extern "C" { /** * @internal - * @def _STATIC - * Control conditional static inline expansions for ABI compatibility + * @def _ODP_INLINE + * Define a function as inlined or not inlined (for ABI compatibility) */ #if @ODP_ABI_COMPAT@ #define ODP_ABI_COMPAT 1 -#define _STATIC +#define _ODP_INLINE #else #define ODP_ABI_COMPAT 0 -#define _STATIC static inline +#define _ODP_INLINE static inline #endif #ifdef __cplusplus diff --git a/platform/linux-generic/include/odp/api/plat/std_clib_inlines.h b/platform/linux-generic/include/odp/api/plat/std_clib_inlines.h index 2e833e4..8f505d0 100644 --- a/platform/linux-generic/include/odp/api/plat/std_clib_inlines.h +++ b/platform/linux-generic/include/odp/api/plat/std_clib_inlines.h @@ -14,17 +14,17 @@ extern "C" { #include #include -_STATIC void *odp_memcpy(void *dst, const void *src, size_t num) +_ODP_INLINE void *odp_memcpy(void *dst, const void *src, size_t num) { return memcpy(dst, src, num); } -_STATIC void *odp_memset(void *ptr, int value, size_t num) +_ODP_INLINE void *odp_memset(void *ptr, int value, size_t num) { return memset(ptr, value, num); } -_STATIC int odp_memcmp(const void *ptr1, const void *ptr2, size_t num) +_ODP_INLINE int odp_memcmp(const void *ptr1, const void *ptr2, size_t num) { return memcmp(ptr1, ptr2, num); } diff --git a/platform/linux-generic/include/odp/api/plat/sync_inlines.h b/platform/linux-generic/include/odp/api/plat/sync_inlines.h index 245c750..76eb681 100644 --- a/platform/linux-generic/include/odp/api/plat/sync_inlines.h +++ b/platform/linux-generic/include/odp/api/plat/sync_inlines.h @@ -21,17 +21,17 @@ extern "C" { * @{ */ -_STATIC void odp_mb_release(void) +_ODP_INLINE void odp_mb_release(void) { __atomic_thread_fence(__ATOMIC_RELEASE); } -_STATIC void odp_mb_acquire(void) +_ODP_INLINE void odp_mb_acquire(void) { __atomic_thread_fence(__ATOMIC_ACQUIRE); } -_STATIC void odp_mb_full(void) +_ODP_INLINE void odp_mb_full(void) { __atomic_thread_fence(__ATOMIC_SEQ_CST); }