review (S) for 6849984: Value methods for platform dependent math functions constant fold incorrectly
Vladimir.Kozlov at Sun.COM
Wed Jan 13 17:14:53 PST 2010
>> Did you tested on sparc where all StubRoutines::intrinsic_* are NULL?
>> I don't see their initialization on sparc.
> I ran the whole thing through JPRT. We don't use those nodes on sparc so that's why they don't have an implementation. If you use those nodes you are required to provide an implementation. There's an explicit comment about that in stubGenerator_sparc.cpp.
I forgot that these nodes generation is guarded by
Matcher::has_match_rule() and on sparc it is false.
Final changes look good.
>> Use movdbl() instead of movsd().
>> + StubCodeMark mark(this, "StubRoutines", "cos");
>> + __ movsd(xmm0, Address(rsp, 0));
>> + __ addq(rsp, 8);
>> + __ fld_d(Address(rsp, 4)); <<<<<< What is that???
> I don't know. It looks like a piece left behind during editing. I've removed it.
>> + __ ret(0);
>> + }
>> Tom Rodriguez wrote:
More information about the hotspot-compiler-dev