The set of patches split x86 architecture specific operations from DPDK and put them to the arch directories of i686 and x86_64 architecture. This will make the adpotion of DPDK much easier on other computer architecture. For a new architecture, just add an architecture specific directory and necessary building configuration files, then DPDK can support it.
Chao Zhu (7): Split atomic operations to architecture specific Split byte order operations to architecture specific Split CPU cycle operation to architecture specific Split prefetch operations to architecture specific Split spinlock operations to architecture specific Split memcpy operation to architecture specific Split CPU flags operations to architecture specific lib/librte_eal/common/Makefile | 2 +- lib/librte_eal/common/eal_common_cpuflags.c | 173 +--------- .../common/include/i686/arch/rte_atomic_arch.h | 378 ++++++++++++++++++++ .../common/include/i686/arch/rte_byteorder_arch.h | 95 +++++ .../common/include/i686/arch/rte_cpuflags_arch.h | 335 +++++++++++++++++ .../common/include/i686/arch/rte_cycles_arch.h | 108 ++++++ .../common/include/i686/arch/rte_memcpy_arch.h | 199 ++++++++++ .../common/include/i686/arch/rte_prefetch_arch.h | 68 ++++ .../common/include/i686/arch/rte_spinlock_arch.h | 128 +++++++ lib/librte_eal/common/include/rte_atomic.h | 172 +-------- lib/librte_eal/common/include/rte_byteorder.h | 58 +--- lib/librte_eal/common/include/rte_cpuflags.h | 110 +------ lib/librte_eal/common/include/rte_cycles.h | 31 +-- lib/librte_eal/common/include/rte_memcpy.h | 95 +----- lib/librte_eal/common/include/rte_prefetch.h | 7 +- lib/librte_eal/common/include/rte_spinlock.h | 55 +--- .../common/include/x86_64/arch/rte_atomic_arch.h | 378 ++++++++++++++++++++ .../include/x86_64/arch/rte_byteorder_arch.h | 95 +++++ .../common/include/x86_64/arch/rte_cpuflags_arch.h | 335 +++++++++++++++++ .../common/include/x86_64/arch/rte_cycles_arch.h | 108 ++++++ .../common/include/x86_64/arch/rte_memcpy_arch.h | 199 ++++++++++ .../common/include/x86_64/arch/rte_prefetch_arch.h | 68 ++++ .../common/include/x86_64/arch/rte_spinlock_arch.h | 128 +++++++ 23 files changed, 2660 insertions(+), 665 deletions(-) create mode 100644 lib/librte_eal/common/include/i686/arch/rte_atomic_arch.h create mode 100644 lib/librte_eal/common/include/i686/arch/rte_byteorder_arch.h create mode 100644 lib/librte_eal/common/include/i686/arch/rte_cpuflags_arch.h create mode 100644 lib/librte_eal/common/include/i686/arch/rte_cycles_arch.h create mode 100644 lib/librte_eal/common/include/i686/arch/rte_memcpy_arch.h create mode 100644 lib/librte_eal/common/include/i686/arch/rte_prefetch_arch.h create mode 100644 lib/librte_eal/common/include/i686/arch/rte_spinlock_arch.h create mode 100644 lib/librte_eal/common/include/x86_64/arch/rte_atomic_arch.h create mode 100644 lib/librte_eal/common/include/x86_64/arch/rte_byteorder_arch.h create mode 100644 lib/librte_eal/common/include/x86_64/arch/rte_cpuflags_arch.h create mode 100644 lib/librte_eal/common/include/x86_64/arch/rte_cycles_arch.h create mode 100644 lib/librte_eal/common/include/x86_64/arch/rte_memcpy_arch.h create mode 100644 lib/librte_eal/common/include/x86_64/arch/rte_prefetch_arch.h create mode 100644 lib/librte_eal/common/include/x86_64/arch/rte_spinlock_arch.h