I noticed that rdma is turned off when using -mcpu=native on ThunderX2 CN99xx which is incorrect. The main reason it does that is because rdma is incorrectly recorded as rdma rather than simdrdma as the feature string in aarch64-option-extensions.def.
This patch fixes and fixes the problem I was seeing as in some binutils +nordma disables simd also. Committed as obvious after a bootstrap/test on aarch64-linux-gnu with no regressions. Here is my /proc/cpuinfo: processor : 29 BogoMIPS : 400.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics cpuid asimdrdm CPU implementer : 0x42 CPU architecture: 8 CPU variant : 0x0 CPU part : 0x516 CPU revision : 1 Thanks, Andrew Pinski ChangeLog: * aarch64-option-extensions.def (rdma): Fix feature string to what Linux prints out in /proc/cpuinfo.
Index: aarch64-option-extensions.def =================================================================== --- aarch64-option-extensions.def (revision 251068) +++ aarch64-option-extensions.def (working copy) @@ -65,6 +65,6 @@ AARCH64_OPT_EXTENSION("rcpc", AARCH64_FL /* Enabling "rdma" also enables "fp", "simd". Disabling "rdma" just disables "rdma". */ -AARCH64_OPT_EXTENSION("rdma", AARCH64_FL_RDMA, AARCH64_FL_FP | AARCH64_FL_SIMD, 0, "rdma") +AARCH64_OPT_EXTENSION("rdma", AARCH64_FL_RDMA, AARCH64_FL_FP | AARCH64_FL_SIMD, 0, "asimdrdm") #undef AARCH64_OPT_EXTENSION