Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/98647/?format=api
https://patches.dpdk.org/api/patches/98647/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/20210910133713.93103-15-cristian.dumitrescu@intel.com/", "project": { "id": 1, "url": "https://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20210910133713.93103-15-cristian.dumitrescu@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20210910133713.93103-15-cristian.dumitrescu@intel.com", "date": "2021-09-10T13:37:04", "name": "[V2,15/24] pipeline: create inline functions for instruction operands", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "7b0fd5f8d6bf319425c7072a58677a700e4bf911", "submitter": { "id": 19, "url": "https://patches.dpdk.org/api/people/19/?format=api", "name": "Cristian Dumitrescu", "email": "cristian.dumitrescu@intel.com" }, "delegate": { "id": 1, "url": "https://patches.dpdk.org/api/users/1/?format=api", "username": "tmonjalo", "first_name": "Thomas", "last_name": "Monjalon", "email": "thomas@monjalon.net" }, "mbox": "https://patches.dpdk.org/project/dpdk/patch/20210910133713.93103-15-cristian.dumitrescu@intel.com/mbox/", "series": [ { "id": 18840, "url": "https://patches.dpdk.org/api/series/18840/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=18840", "date": "2021-09-10T13:36:50", "name": "[V2,01/24] pipeline: move data structures to internal header file", "version": 2, "mbox": "https://patches.dpdk.org/series/18840/mbox/" } ], "comments": "https://patches.dpdk.org/api/patches/98647/comments/", "check": "success", "checks": "https://patches.dpdk.org/api/patches/98647/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id B6203A0547;\n\tFri, 10 Sep 2021 15:38:54 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 5B795411A0;\n\tFri, 10 Sep 2021 15:37:36 +0200 (CEST)", "from mga09.intel.com (mga09.intel.com [134.134.136.24])\n by mails.dpdk.org (Postfix) with ESMTP id 0F0374116C\n for <dev@dpdk.org>; Fri, 10 Sep 2021 15:37:27 +0200 (CEST)", "from fmsmga002.fm.intel.com ([10.253.24.26])\n by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 10 Sep 2021 06:37:27 -0700", "from silpixa00400573.ir.intel.com (HELO\n silpixa00400573.ger.corp.intel.com) ([10.237.223.107])\n by fmsmga002.fm.intel.com with ESMTP; 10 Sep 2021 06:37:27 -0700" ], "X-IronPort-AV": [ "E=McAfee;i=\"6200,9189,10102\"; a=\"221113299\"", "E=Sophos;i=\"5.85,283,1624345200\"; d=\"scan'208\";a=\"221113299\"", "E=Sophos;i=\"5.85,283,1624345200\"; d=\"scan'208\";a=\"549328560\"" ], "X-ExtLoop1": "1", "From": "Cristian Dumitrescu <cristian.dumitrescu@intel.com>", "To": "dev@dpdk.org", "Date": "Fri, 10 Sep 2021 14:37:04 +0100", "Message-Id": "<20210910133713.93103-15-cristian.dumitrescu@intel.com>", "X-Mailer": "git-send-email 2.17.1", "In-Reply-To": "<20210910133713.93103-1-cristian.dumitrescu@intel.com>", "References": "<20210910123003.85448-1-cristian.dumitrescu@intel.com>\n <20210910133713.93103-1-cristian.dumitrescu@intel.com>", "Subject": "[dpdk-dev] [PATCH V2 15/24] pipeline: create inline functions for\n instruction operands", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "content": "Create inline functions to get the instruction operands.\n\nSigned-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>\n---\n lib/pipeline/rte_swx_pipeline_internal.h | 29 ++++++++++++++++++++++++\n 1 file changed, 29 insertions(+)", "diff": "diff --git a/lib/pipeline/rte_swx_pipeline_internal.h b/lib/pipeline/rte_swx_pipeline_internal.h\nindex 791adfb471..efd136196f 100644\n--- a/lib/pipeline/rte_swx_pipeline_internal.h\n+++ b/lib/pipeline/rte_swx_pipeline_internal.h\n@@ -928,6 +928,35 @@ struct thread {\n #define HEADER_VALID(thread, header_id) \\\n \tMASK64_BIT_GET((thread)->valid_headers, header_id)\n \n+static inline uint64_t\n+instr_operand_hbo(struct thread *t, const struct instr_operand *x)\n+{\n+\tuint8_t *x_struct = t->structs[x->struct_id];\n+\tuint64_t *x64_ptr = (uint64_t *)&x_struct[x->offset];\n+\tuint64_t x64 = *x64_ptr;\n+\tuint64_t x64_mask = UINT64_MAX >> (64 - x->n_bits);\n+\n+\treturn x64 & x64_mask;\n+}\n+\n+#if RTE_BYTE_ORDER == RTE_LITTLE_ENDIAN\n+\n+static inline uint64_t\n+instr_operand_nbo(struct thread *t, const struct instr_operand *x)\n+{\n+\tuint8_t *x_struct = t->structs[x->struct_id];\n+\tuint64_t *x64_ptr = (uint64_t *)&x_struct[x->offset];\n+\tuint64_t x64 = *x64_ptr;\n+\n+\treturn ntoh64(x64) >> (64 - x->n_bits);\n+}\n+\n+#else\n+\n+#define instr_operand_nbo instr_operand_hbo\n+\n+#endif\n+\n #define ALU(thread, ip, operator) \\\n { \\\n \tuint8_t *dst_struct = (thread)->structs[(ip)->alu.dst.struct_id]; \\\n", "prefixes": [ "V2", "15/24" ] }{ "id": 98647, "url": "