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

Create a separate library for x86 Intel SVML assembly intrinsics

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • repo-panama
    • repo-panama
    • hotspot
    • None

      Intel Short Vector Math Library (SVML) based intrinsics in native x86 assembly provide optimized implementation for Vector API transcendental and trigonometric methods.
      These methods can be built into a separate library instead of being part of libjvm.so or jvm.dll.

      The following changes are made:
         The source for these methods is placed in the jdk.incubator.vector module under src/jdk.incubator.vector/linux/native/libsvml and src/jdk.incubator.vector/windows/native/libsvml.
         The assembly source files are named as “*.S” and include files are named as “*.S.inc”.
         The corresponding build script is placed at make/modules/jdk.incubator.vector/Lib.gmk.
         Changes are made to build system to support dependency tracking for assembly files with includes.
         The built native libraries (libsvml.so/svml.dll) are placed in bin directory of JDK on Windows and lib directory of JDK on Linux.
         The C2 JIT uses the dll_load and dll_lookup to get the addresses of optimized methods from this library.

      Build system changes and module library build scripts are contributed by Magnus (magnus.ihse.bursie@oracle.com).

            sviswanathan Sandhya Viswanathan
            sviswanathan Sandhya Viswanathan
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: