Skip to content
Success

Changes

Summary

  1. Remove unused symbols referring to classAndDepthFlags (commit: 1dd236b) (details)
  2. Use testIsClassArrayType to generate IL to test for array type (commit: a62b60b) (details)
Commit 1dd236b9a5687c670abd9153ab34e49e6904bfed by Henry Zongaro
Remove unused symbols referring to classAndDepthFlags

Duplicate symbols that were based on the incorrect field name,
classAndDepthFlags, rather than the correct name, classDepthAndFlags,
are no longer referenced in downstream projects.  This change removes
them.

Signed-off-by:  Henry Zongaro <zongaro@ca.ibm.com>
(commit: 1dd236b)
The file was modified compiler/compile/OMRSymbolReferenceTable.cpp (diff)
The file was modified compiler/compile/OMRNonHelperSymbols.enum (diff)
The file was modified compiler/compile/OMRSymbolReferenceTable.hpp (diff)
Commit a62b60bc009d6cd94eb498b3219090e39e495a8e by Henry Zongaro
Use testIsClassArrayType to generate IL to test for array type

The downstream OpenJ9 project defines a new method,
TR_VMBase::testIsClassArrayType, that generates IL to tests whether a
class is an array class.  Change code that generated IL that loaded
classDepthAndFlags field itself to call testIsClassArrayType instead to
hide at least some of the J9-specific details.

Also, generate a comparison of the result of the IL produced by
testIsClassArrayType with zero, rather than comparing with the array
class flag.  A comparison with zero is expected to be preferred on most
platforms.

Signed-off-by:  Henry Zongaro <zongaro@ca.ibm.com>
(commit: a62b60b)
The file was modified compiler/optimizer/LoopVersioner.cpp (diff)