Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-25 Thread Alan Bateman
On 25/02/2013 20:24, Mike Duigou wrote: I made one additional change to the regression test so that the keys and values aren't in the same range. It didn't produce any failures but I think it is a good addition to catch future bugs. Mike Looks okay. -Alan

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-25 Thread Mike Duigou
I made one additional change to the regression test so that the keys and values aren't in the same range. It didn't produce any failures but I think it is a good addition to catch future bugs. Mike diff --git a/test/java/util/Map/ToArray.java b/test/java/util/Map/ToArray.java --- a/test/java/ut

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-25 Thread Mike Duigou
On Feb 25 2013, at 10:13 , Alan Bateman wrote: > On 25/02/2013 15:55, Mike Duigou wrote: >> : >> >>> The webrev suggests you've replaced Map/Collisions.java and assume that is >>> not the intention. Otherwise the new test looks okay, an alternative would >>> have been to expand MOAT. >> Webrev

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-25 Thread Alan Bateman
On 25/02/2013 15:55, Mike Duigou wrote: : The webrev suggests you've replaced Map/Collisions.java and assume that is not the intention. Otherwise the new test looks okay, an alternative would have been to expand MOAT. Webrev doesn't properly recognize 'hg copy' and sees it as a rename. I sta

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-25 Thread Mike Duigou
On Feb 25 2013, at 01:51 , Alan Bateman wrote: > On 25/02/2013 04:06, Mike Duigou wrote: >> I have created an issue for fixing the introduced regression and created a >> regression test that would have caught the error (fix a bug, write a >> test...). >> >> 8008785: IdentityHashMap.values().to

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-25 Thread Mike Duigou
On Feb 25 2013, at 01:51 , Alan Bateman wrote: > On 25/02/2013 04:06, Mike Duigou wrote: >> I have created an issue for fixing the introduced regression and created a >> regression test that would have caught the error (fix a bug, write a >> test...). >> >> 8008785: IdentityHashMap.values().to

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-25 Thread Alan Bateman
On 25/02/2013 04:06, Mike Duigou wrote: I have created an issue for fixing the introduced regression and created a regression test that would have caught the error (fix a bug, write a test...). 8008785: IdentityHashMap.values().toArray(V[]) broken by JDK-8008167 http://cr.openjdk.java.net/~mdu

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-24 Thread Mike Duigou
I have created an issue for fixing the introduced regression and created a regression test that would have caught the error (fix a bug, write a test...). 8008785: IdentityHashMap.values().toArray(V[]) broken by JDK-8008167 http://cr.openjdk.java.net/~mduigou/JDK-8008785/0/webrev Mike On Feb 24

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-24 Thread Peter Levart
Hi Mike, I thought I saw that too when you commited the change, but then re-examinig the whole source in detail, I couldn't spot it again. I must have stared at the wrong third of change... Regards, Peter On 02/24/2013 07:53 PM, Mike Duigou wrote: Ouch, this would have been introduced by me

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-24 Thread Mike Duigou
Ouch, this would have been introduced by me. I will check to see how this could have passed the pre-commit regression testing. I suspect that a regression test needs to be improved. Mike On Feb 24 2013, at 10:48 , Alan Bateman wrote: > On 24/02/2013 15:49, Peter Levart wrote: >> >> Hi Alan, >

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-24 Thread Alan Bateman
On 24/02/2013 15:49, Peter Levart wrote: Hi Alan, I checked and it seems all 3 IHM views [keySet|values|entrySet] have a fail-fast iterator implementation (IdentityHashMap.IdentityHashMapIterator) and all 3 are (were) using the iterator for .toArray implementations. So this patch tries to pr

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-24 Thread Peter Levart
k/rev/e57019d2f34a 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up Reviewed-by: mduigou, martin Contributed-by: Peter Levartmailto:peter.lev...@gmail.com>> ! src/share/classes/java/util/IdentityHashMap.java A belated comment on this is that CME will no

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-24 Thread Peter Levart
k.java.net/jdk8/tl/jdk/rev/e57019d2f34a> >> >> 8008167: IdentityHashMap.[keySet|**values|entrySet].toArray speed-up >> Reviewed-by: mduigou, martin >> Contributed-by: Peter Levart >> >> ! src/share/classes/java/util/**IdentityHashMap.java >> >> A belated comment

Re: hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-24 Thread Alan Bateman
On 14/02/2013 17:55, mike.dui...@oracle.com wrote: Changeset: e57019d2f34a Author:mduigou Date: 2013-02-13 14:50 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e57019d2f34a 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up Reviewed-by: mduigou, martin

hg: jdk8/tl/jdk: 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-14 Thread mike . duigou
Changeset: e57019d2f34a Author:mduigou Date: 2013-02-13 14:50 -0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e57019d2f34a 8008167: IdentityHashMap.[keySet|values|entrySet].toArray speed-up Reviewed-by: mduigou, martin Contributed-by: Peter Levart ! src/share/classes/java

Re: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-14 Thread Mike Duigou
On Feb 14 2013, at 05:24 , Peter Levart wrote: > Hello Mike, > > On 02/13/2013 09:21 PM, Mike Duigou wrote: >> This looks like excellent contribution Peter! >> >> I will proceed with the testing needed to integrate your improved >> toArray()/toArray(T[]) implementations. I have created an issu

Re: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-14 Thread Peter Levart
Hello Mike, On 02/13/2013 09:21 PM, Mike Duigou wrote: This looks like excellent contribution Peter! I will proceed with the testing needed to integrate your improved toArray()/toArray(T[]) implementations. I have created an issue, JDK-8008167, for this patch. I am surprised that this didn't

Re: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-13 Thread Martin Buchholz
Seems pretty good overall. Thanks for doing this. Style: put your open braces at the end of the line. --- +int si = 0; +while (si < tab.length) { why not the more readable: for (int i = 0, len = tab.length; i < len; i += 2) { Object key = tab[i]; if (key != null)

Re: IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2013-02-13 Thread Mike Duigou
This looks like excellent contribution Peter! I will proceed with the testing needed to integrate your improved toArray()/toArray(T[]) implementations. I have created an issue, JDK-8008167, for this patch. I am surprised that this didn't get more attention back in December as it does seem to o

IdentityHashMap.[keySet|values|entrySet].toArray speed-up

2012-12-12 Thread Peter Levart
Hi all, I propose a patch to java.util.IdentityHashMap to speed-up toArray methods of it's keySet, values and entrySet views: http://dl.dropbox.com/u/101777488/jdk8-tl/IdentityHashMap/webrev.01/index.html I toyed with the possibility to replace HashMap-s, that are used in java.lang.Class and