@@ -116,6 +116,26 @@ part_number_config_arm = {
116116 [' RTE_MAX_LCORE' , 144 ],
117117 [' RTE_MAX_NUMA_NODES' , 2 ]
118118 ]
119+ },
120+ ' 0xd8e' : {
121+ # Only when -march=armv9-a+wfxt is used will the WFET
122+ # feature be compiled with armv9 instructions.
123+ # However, +wfxt is not supported by GCC at the moment.
124+ # Although armv9-a is the fitting version of Arm ISA for
125+ # Neoverse N3, it cannot be used when enabling wfxt for
126+ # the above reasons.
127+ # The workaround for this is to use armv8.7-a, which
128+ # doesn't require +wfxt for binutils version 2.36 or greater.
129+ ' march' : ' armv8.7-a' ,
130+ ' march_features' : [' sve2' ],
131+ ' fallback_march' : ' armv8.5-a' ,
132+ ' flags' : [
133+ [' RTE_MACHINE' , ' "neoverse-n3"' ],
134+ [' RTE_ARM_FEATURE_ATOMICS' , true ],
135+ [' RTE_ARM_FEATURE_WFXT' , true ],
136+ [' RTE_MAX_LCORE' , 192 ],
137+ [' RTE_MAX_NUMA_NODES' , 2 ]
138+ ]
119139 }
120140}
121141implementer_arm = {
@@ -572,6 +592,13 @@ soc_n2 = {
572592 ' numa' : false
573593}
574594
595+ soc_n3 = {
596+ ' description' : ' Arm Neoverse N3' ,
597+ ' implementer' : ' 0x41' ,
598+ ' part_number' : ' 0xd8e' ,
599+ ' numa' : false
600+ }
601+
575602soc_odyssey = {
576603 ' description' : ' Marvell Odyssey' ,
577604 ' implementer' : ' 0x41' ,
@@ -699,6 +726,7 @@ socs = {
699726 ' kunpeng930' : soc_kunpeng930,
700727 ' n1sdp' : soc_n1sdp,
701728 ' n2' : soc_n2,
729+ ' n3' : soc_n3,
702730 ' odyssey' : soc_odyssey,
703731 ' stingray' : soc_stingray,
704732 ' thunderx2' : soc_thunderx2,
@@ -852,7 +880,7 @@ if update_flags
852880 if part_number_config.get(' force_march' , false )
853881 candidate_march = part_number_config[' march' ]
854882 else
855- supported_marchs = [' armv9-a' , ' armv8.6-a' , ' armv8.5-a' , ' armv8.4-a' , ' armv8.3-a' ,
883+ supported_marchs = [' armv9-a' , ' armv8.7-a ' , ' armv8. 6-a' , ' armv8.5-a' , ' armv8.4-a' , ' armv8.3-a' ,
856884 ' armv8.2-a' , ' armv8.1-a' , ' armv8-a' ]
857885 check_compiler_support = false
858886 foreach supported_march : supported_marchs
0 commit comments