RFR: 8278868: Add x86 vectorization support for Long.bitCount() [v8]

Vamsi Parasa duke at openjdk.java.net
Fri Jan 7 00:36:49 UTC 2022


> Vectorization support of Integer.bitCount() already exists but currently the same support is lacking for Long.bitCount(). Similar to the C2 PopCountVI node, we created a C2 PopCountVL node and used vpopcntq x86 instruction to enable vectorized Long.bitCount(). This patch shows 2.57x improvement in performance on a JMH micro benchmark due to x86 vectorization.

Vamsi Parasa has updated the pull request incrementally with one additional commit since the last revision:

  Fix error with opc == Op_PopCountI

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/6857/files
  - new: https://git.openjdk.java.net/jdk/pull/6857/files/d8b3cedd..b3717ad6

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=6857&range=07
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=6857&range=06-07

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6857.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6857/head:pull/6857

PR: https://git.openjdk.java.net/jdk/pull/6857


More information about the hotspot-compiler-dev mailing list