Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8074547

libjli, get_cpuid() implementation missing for MacOs, breaks libjli.so build in slowdebug

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P4 P4
    • None
    • 9
    • tools
    • None

      When building the libjli.so on MacOS with debuglevel=slowdebug, I get the following error:

      Undefined symbols for architecture x86_64:
        "_get_cpuid", referenced from:
            _hyperthreading_support in ergo_i586.o
            _logical_processors_per_package in ergo_i586.o
      ld: symbol(s) not found for architecture x86_64


      The reason for that is that in ergo_i586.c, the implementation for "get_cpuid()" is missing for the MacOS case (one is provided for solaris and linux).

      This only leads to an error in slowdebug, because the function is only used from static functions which are not exported; when building with optimization (e.g. fastdebug), all these functions are thrown away by the compiler and therefore get_cpuid() is not needed.






            ksrini Kumar Srinivasan
            stuefe Thomas Stuefe
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: