FYI: Patch: java.net.InetAddress
Bryce McKinlay
bryce@mckinlay.net.nz
Mon Sep 29 22:36:00 GMT 2003
On Monday, Sep 29, 2003, at 23:55 Pacific/Auckland, Michael Koch wrote:
> I commited the attached patch to trunk to merge the comments of some
> methods with classpath and to simplify isMulticastAddress().
>
> Index: java/net/InetAddress.java
> ===================================================================
> RCS file: /cvs/gcc/gcc/libjava/java/net/InetAddress.java,v
> retrieving revision 1.20
> diff -u -b -B -r1.20 InetAddress.java
> --- java/net/InetAddress.java 29 Sep 2003 11:24:28 -0000 1.20
> +++ java/net/InetAddress.java 29 Sep 2003 11:39:32 -0000
> @@ -140,12 +140,12 @@
> */
> public boolean isMulticastAddress()
> {
> - int len = addr.length;
> -
> - if (len == 4)
> + // Mask against high order bits of 1110
> + if (addr.length == 4)
> return (addr [0] & 0xF0) == 0xE0;
Note that often, its is more efficient to copy a class field into a
local variable if it is going to be used more than once. This prevents
the field being reloaded in cases where the compiler can't guarantee
that it wont have changed due to, say, a method call in between.
In this case, however, the compiler is hopefully smart enough to
optimize out the second load, so it isn't a problem.
>
> - if (len == 16)
> + // Mask against high order bits of 11111111
> + if (addr.lenth == 16)
> return addr [0] == (byte) 0xFF;
^^ typo ?
Regards
Bryce
More information about the Java-patches
mailing list