[12] RFR 8206895: aarch64: rework error-prone cmp instuction

Andrew Haley aph at redhat.com
Mon Jul 9 15:54:47 UTC 2018


On 07/09/2018 04:33 PM, Boris Ulasevich wrote:
> sorry. updated review link:
> http://cr.openjdk.java.net/~bulasevich/8206895/webrev.01
> 
> On 09.07.2018 18:32, Boris Ulasevich wrote:
>> I am not sure how to mark instruction deprecated.

http://mail.openjdk.java.net/pipermail/aarch64-port-dev/2018-May/005840.html

 Why don't just remove
>> it and update all the usage points? Here is the updated review:
>>
>> http://cr.openjdk.java.net/~bulasevich/8206895/webrev.01
>>
>> Boris
>>
>> On 09.07.2018 17:50, Andrew Haley wrote:
>>> On 07/09/2018 03:31 PM, Boris Ulasevich wrote:
>>>> http://cr.openjdk.java.net/~bulasevich/8206895/webrev.00
>>>> https://bugs.openjdk.java.net/browse/JDK-8206895
>>>>
>>>> Byte form of cmp instruction was added. For bigger constants we are
>>>> supposed to state _imm12 postfix implicitly or use cmp(reg,reg,imm) 
>>>> macro.
>>>
>>> I don't think that making cmp an alias for subs helps anyone:
>>>
>>> +  inline void cmp(Register Rd, Register Rn, unsigned imm32)  { 
>>> subs(Rd, Rn, imm32); }
>>>
>>> I think the best suggestion was to make the 8-bit cmp the only form
>>> allowed, mark the larger cmp as deprecated, and force the user to use
>>> subs.  That would be easier to read than cmp_imm12().
>>>


-- 
Andrew Haley
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671


More information about the hotspot-dev mailing list