Also my compiler (odp-check) does not know what is __crc32w.
We need to fix aarch64 before inclusion.
Also all arch specific code should go to:
./platform/linux-generic/arch/
And arch dependant ifdefs has to be removed. For api-next I'm ok to have
that fix in separate branch,
but for master that code has to be under arch/
Also needed define hashes for i386 in odp_name_table.c
-#if defined __x86_64__
+#if defined __x86_64__ || defined __i386__
For arm probably __crc32w should be called as everywhere instead
of directly asm code:
#define PLATFORM_HASH32(hash_state, name_word) \
- ({ \
- asm volatile ("crc32w %0, %0, %1" : \
- "=r" (hash_state) : \
- "r" (name_word)); \
+ ({ \
+ __crc32w(hash_state, name_word); \
})
Linux kernel has special defines for CRC32XX function for arm and arm64:
http://lxr.free-electrons.com/source/arch/arm64/crypto/crc32-arm64.c#L33
Also needed to update code based on lazy parsing patch because of
input_flags.unparsed
was removed. I think to remove:
- if (pkt_hdr->input_flags.unparsed)
- _odp_packet_parse(pkt_hdr);
So we need to update that series of patches and check that odp-check
compilation passes for all arches.
Thank you,
Maxim.
On 10/27/2015 10:50, Maxim Uvarov wrote:
On 10/22/2015 23:43, Bill Fischofer wrote:
+#elif defined(__arm__) && defined(__aarch64__)
&& -> ||
Maxim.
_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp