@@ -5543,6 +5543,27 @@ hwloc_linux_parse_cpuinfo(struct hwloc_linux_backend_data_s *data,
55435543 return -1 ;
55445544 }
55455545
5546+ /* architecture specific or default routine for parsing cpumodel */
5547+ switch (data -> arch ) {
5548+ case HWLOC_LINUX_ARCH_X86 :
5549+ parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_x86 ;
5550+ break ;
5551+ case HWLOC_LINUX_ARCH_ARM :
5552+ parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_arm ;
5553+ break ;
5554+ case HWLOC_LINUX_ARCH_POWER :
5555+ parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_ppc ;
5556+ break ;
5557+ case HWLOC_LINUX_ARCH_IA64 :
5558+ parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_ia64 ;
5559+ break ;
5560+ case HWLOC_LINUX_ARCH_LOONGARCH :
5561+ parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_loongarch ;
5562+ break ;
5563+ default :
5564+ parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_generic ;
5565+ }
5566+
55465567# define PROCESSOR "processor"
55475568 hwloc_debug ("\n\n * Topology extraction from %s *\n\n" , path );
55485569 while (fgets (str , sizeof (str ), fd )!= NULL ) {
@@ -5612,27 +5633,6 @@ hwloc_linux_parse_cpuinfo(struct hwloc_linux_backend_data_s *data,
56125633 Lprocs [curproc ].infos .allocated = 0 ;
56135634 getprocnb_end () else {
56145635
5615- /* architecture specific or default routine for parsing cpumodel */
5616- switch (data -> arch ) {
5617- case HWLOC_LINUX_ARCH_X86 :
5618- parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_x86 ;
5619- break ;
5620- case HWLOC_LINUX_ARCH_ARM :
5621- parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_arm ;
5622- break ;
5623- case HWLOC_LINUX_ARCH_POWER :
5624- parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_ppc ;
5625- break ;
5626- case HWLOC_LINUX_ARCH_IA64 :
5627- parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_ia64 ;
5628- break ;
5629- case HWLOC_LINUX_ARCH_LOONGARCH :
5630- parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_loongarch ;
5631- break ;
5632- default :
5633- parse_cpuinfo_func = hwloc_linux_parse_cpuinfo_generic ;
5634- }
5635-
56365636 /* we can't assume that we already got a processor index line:
56375637 * alpha/frv/h8300/m68k/microblaze/sparc have no processor lines at all, only a global entry.
56385638 * tile has a global section with model name before the list of processor lines.
0 commit comments