On 24/02/2017 6:00 PM, Volker Simonis wrote:
As far as I can see we don't explicitly set a compatibility mode so
according to the SS 12 documentation [1] we are using -compat=5, which
is the default. Also, according to [1], -feature=nortti can only be
used in compat mode 4. So I'm afraid we have no choice :)
There are always unintended consequences of compiler upgrades :(
David
Regards,
Volker
https://docs.oracle.com/cd/E19205-01/819-5267/6n7c46ebk/index.html
On Fri, Feb 24, 2017 at 1:19 AM, David Holmes <david.hol...@oracle.com> wrote:
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