AltraMayor / AltraMayor/gatekeeper
Minimizing endian computation
- Dominant language
- C
- Stars
- 1.6k
- Forks
- 252
- PR merge metrics
- No merged PRs in 30d
Description
When `rte_be_to_cpu_16()` and its sister functions are called over a constant, they compute their results in compile time, that is, the results are also constants. This enables Gatekeeper to avoid some runtime calls to `rte_be_to_cpu_16()` and its sister functions. For example, in `process_single_packet()` in file `ggu/main.c`, one can rename variable `ether_type` to `ether_type_be`, and adjust the `case`s of the `switch` as in `case rte_cpu_to_be_16(ETHER_TYPE_IPv4):` to make the endian computations in compile time instead of runtime.
In order to completely address this issue, one has to identify all locations at which similar changes can be made. These locations may even include variables other than Ethernet types.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.