[12] (S) RFR 8206122 : Use Queue in place of ArrayList when need to remove first element

Martin Buchholz martinrb at google.com
Tue Jul 10 23:46:53 UTC 2018


Looks good to me, but I'm not a compiler engineer.

On Tue, Jul 10, 2018 at 4:38 PM, Ivan Gerasimov <ivan.gerasimov at oracle.com>
wrote:

> Thank you Martin!
>
> On 7/10/18 2:32 PM, Martin Buchholz wrote:
>
> I'm happy to see ArrayDeque replacing uses of ArrayList.
>
> private final Map<List<String>, Deque<ReusableContext>> options2Contexts = new HashMap<>();
>
> Looks like these Deques are used only via the Queue interface. I would
> either switch to Queue or to ArrayDeque (which might help the VM optimize).
>
>
> Right.
> I can't remember why I used Deque in one place and Queue in the other.
>
> Please find the updated webrev here:
> http://cr.openjdk.java.net/~igerasim/8206122/01/webrev/
>
> With kind regards,
> Ivan
>
>
> On Tue, Jul 10, 2018 at 1:54 PM, Ivan Gerasimov <ivan.gerasimov at oracle.com
> > wrote:
>
>> Hello!
>>
>> It is a tiny optimization.
>>
>> There are a couple of places where ArrayList is used as FIFO: elements
>> are appended to the end, and removed from the head.
>>
>> ArrayDeque would be more efficient to use.
>>
>> Would you please help review?
>>
>> BUG: https://bugs.openjdk.java.net/browse/JDK-8206122
>>
>> Webrev: http://cr.openjdk.java.net/~igerasim/8206122/00/webrev/
>>
>> Thanks in advance!
>>
>> --
>> With kind regards,
>> Ivan Gerasimov
>>
>>
>
> --
> With kind regards,
> Ivan Gerasimov
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/compiler-dev/attachments/20180710/15ab6ec8/attachment-0001.html>


More information about the compiler-dev mailing list