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

Cleanup remaining IA64 references in hotspot code

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • 24
    • 24
    • hotspot
    • b27

      We expunged the bulk of the IA64 code in JDK-6518907 many years ago, but some remnants remain

      ./os/bsd/os_bsd.cpp:#elif defined(IA64)
      ./os/bsd/os_bsd.cpp: #elif (defined IA64)
      ./os/bsd/os_bsd.cpp: IA32, AMD64, IA64, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K
      ./os/linux/hugepages.cpp: // mode is enabled. AMD64/EM64T uses 2M page in 64bit mode. IA64 can use
      ./os/linux/os_linux.cpp:#elif (defined IA64)
      ./os/linux/os_linux.cpp: AARCH64, ALPHA, ARM, AMD64, IA32, IA64, LOONGARCH64, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, RISCV, S390, SH, __sparc
      ./os/linux/os_linux.cpp:#elif defined(IA64)
      ./os/linux/os_linux.cpp: strncpy(cpuinfo, "IA64", length);
      ./os/posix/signals_posix.cpp:#if defined(IA64) && defined(LINUX)
      ./os/posix/signals_posix.cpp:#if defined(IA64) && !defined(AIX)
      ./share/opto/generateOptoStub.cpp:#if (defined(IA64) && !defined(AIX))
      ./share/opto/output.cpp: // and memory stacks (ie. IA64).
      ./share/opto/chaitin.cpp: // IA64 1 1 1 1 1 50 41
      ./share/runtime/abstract_vm_version.cpp: IA64_ONLY("ia64") \
      ./share/utilities/macros.hpp:// This is a REALLY BIG HACK, but on AIX <sys/systemcfg.h> unconditionally defines IA64.
      ./share/utilities/macros.hpp:#if defined(IA64) && !defined(AIX)
      ./share/utilities/macros.hpp:#define IA64_ONLY(code) code
      ./share/utilities/macros.hpp:#define NOT_IA64(code)
      ./share/utilities/macros.hpp:#define IA64_ONLY(code)
      ./share/utilities/macros.hpp:#define NOT_IA64(code) code
      ./share/utilities/elfFuncDescTable.cpp: // first value in the function descriptor (on IA64 and PPC64 they look as follows):
      ./share/utilities/elfFuncDescTable.cpp: // IA64 : [function entry point, GP (global pointer) value]
      ./share/utilities/elfFuncDescTable.cpp: // assert(IA64_ONLY(2) PPC64_ONLY(3) * sizeof(address) == shdr.sh_entsize, "Size mismatch for '.opd' section entries");
      ./share/utilities/elfFuncDescTable.hpp:On PowerPC-64 (and other architectures like for example IA64) a pointer to a
      hotspot-oraclelinux-12 /scratch/users/daholme/jdk-dev.git/open/src/hotspot > grepsrc.sh ia64
      ./os/bsd/os_bsd.cpp:static char cpu_arch[] = "ia64";
      ./os/linux/os_linux.cpp:// i386: 224, ia64: 1105, amd64: 186, sparc: 143
      ./os/linux/os_linux.cpp: #ifdef __ia64__
      ./share/runtime/deoptimization.cpp: // Note: on ia64 this guarantee can be fooled by frames with no memory stack
      ./share/runtime/deoptimization.cpp: // 4852688: ProfileInterpreter is off by default for ia64. The result is
      ./share/runtime/abstract_vm_version.cpp: IA64_ONLY("ia64") \
      ./share/runtime/frame.hpp: // For sparc and ia32 use sp. ia64 can have memory frames that are empty so multiple frames
      ./share/runtime/frame.hpp: // will have identical sp values. For ia64 the bsp (fp) value will serve. No real frame
      ./share/runtime/os.hpp: // only walk stack if %ebp is used as frame pointer; on ia64, it's not
      ./share/runtime/javaCalls.cpp: // on sparc/ia64 which will catch violations of the resetting of last_Java_frame
      ./share/runtime/relocator.cpp: case Bytecodes::_lookupswitch: // not rewritten on ia64

      Note references to IA64 in Zero code should remain.

      There are some sparc leftovers in the above too.

            amitkumar Amit Kumar
            dholmes David Holmes
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: