review (S) for 6849984: Value methods for platform dependent math functions constant fold incorrectly

Tom Rodriguez Thomas.Rodriguez at Sun.COM
Thu Jan 14 11:32:27 PST 2010


On Jan 14, 2010, at 9:45 AM, Vladimir Kozlov wrote:

> Christian Thalinger wrote:
>> It's a little strange to generate the math intrinsics along with the
>> arraycopy stubs in:
>>  void generate_arraycopy_stubs() {
> 
> Yes, it could be new generate_math_stubs() but it be more changes.

I actually hadn't intended to put them in with arraycopy.  I've moved them into their own function.

> 
>> Maybe I missed the point of this change, but why are we using the much
>> more complicated C versions for these?
>> +     // The intrinsic version of these seem to return the same value as
>> +     // the strict version.
>> +     StubRoutines::_intrinsic_exp = SharedRuntime::dexp;
>> +     StubRoutines::_intrinsic_pow = SharedRuntime::dpow;
> 
> There is no implementation of ExpD and PowD in x86_64.ad (which is surprise - we missed it???)

That is odd.  I'm honestly not sure whether the intrinsic versions of exp and pow return the same as fdlibm but I assumed it was true since we don't have an interpreter version of those intrinsics.

I've updated the webrev with all the comments so far.

tom

> And it is also complex code - see it in x86_32.ad
> 
> Vladimir
> 
>> Otherwise this looks good.
>> -- Christian



More information about the hotspot-compiler-dev mailing list