On 24/02/2017 8:10 AM, Ioi Lam wrote:
I noticed that on Solaris/SPARC, RTTI is enabled in the JVM build. Is there any reason for it? Just curious.
Probably accidental due to default compiler settings. AFAIK we do not use any C++ RTTI in hotspot and it should not be enabled.
David -----
This is what I got in dbx when looking at the first slot of a C++ vtable: (dbx) print *(int**)(0xfffffffefa20bdd0) *((int **) 18446744069316066768U) = 0xfffffffef9de5b78 (dbx) dis 0xfffffffef9de6050 0xfffffffef9de6050: __RTTI__1nFMyYYY4nMConstantPool___ : illtrap 0x0 0xfffffffef9de6054: __RTTI__1nFMyYYY4nMConstantPool___+0x0004: illtrap 0xae8 0xfffffffef9de6058: __RTTI__1nFMyYYY4nMConstantPool___+0x0008: illtrap 0x0 0xfffffffef9de605c: __RTTI__1nFMyYYY4nMConstantPool___+0x000c: illtrap 0x0 0xfffffffef9de6060: __RTTI__1nFMyYYY4nMConstantPool___+0x0010: illtrap 0x0 0xfffffffef9de6064: __RTTI__1nFMyYYY4nMConstantPool___+0x0014: illtrap 0xaf0 0xfffffffef9de6068: __RTTI__1nFMyYYY4nMConstantPool___+0x0018: ldsb [%o7 - 3854], %g7 0xfffffffef9de606c: __RTTI__1nFMyYYY4nMConstantPool___+0x001c: sethi %hi(0x7612ac00), %l1 0xfffffffef9de6070: __RTTI__1nFMyYYY4nMConstantPool___+0x0020: ldstub [%i3 + 1076], %o4 0xfffffffef9de6074: __RTTI__1nFMyYYY4nMConstantPool___+0x0024: be,a 0xfffffffefa526810 Thanks - Ioi