RFR: 8205459: Rename Access API flag decorators
Per Liden
per.liden at oracle.com
Thu Jun 21 09:32:55 UTC 2018
Hi Kim,
On 06/21/2018 10:25 AM, Kim Barrett wrote:
> Please review these name and behavioral changes for some Access API
> decorators. We want to recategorize these as orthogonal boolean
> flags. Specifically,
>
> OOP_NOT_NULL => IS_NOT_NULL
> AS_DEST_NOT_INITIALIZED => IS_DEST_UNINITIALIZED
> IN_HEAP_ARRAY => IN_ARRAY
>
> In addition:
>
> Remove OOP_DECORATOR_MASK.
>
> Change IN_ARRAY (formerly IN_HEAP_ARRAY) to no longer imply IN_HEAP.
> Note that all of the places where IN_HEAP_ARRAY was being specified
> already also specified IN_HEAP.
>
> Some cleanups, such as renaming local variables from "on_array" to
> "is_array", for consistency with the associated decorator name.
>
> To aid reviewing, separate webrevs for each renaming are provided.
>
> Each of these renamings involves a lot of mechanical text replacement,
> with some further manual changes. Separate webrevs are also provided
> for the mechanical and manual parts of each renaming.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8205459
>
> Testing:
> Mach5 tier1,2,3,hs-tier4,5.
>
> Webrevs:
>
> The entire set of changes:
>
> http://cr.openjdk.java.net/~kbarrett/8205459/open.00/
Looks good, just two comments:
src/hotspot/share/oops/accessDecorators.hpp
-------------------------------------------
Looks like the decorator numbers got a bit mixed up:
[...]
155 const DecoratorSet AS_RAW = UCONST64(1) << 12;
156 const DecoratorSet AS_NO_KEEPALIVE = UCONST64(1) << 14;
[...]
185 const DecoratorSet IN_HEAP = UCONST64(1) << 20;
186 const DecoratorSet IN_NATIVE = UCONST64(1) << 22;
[...]
196 const DecoratorSet IS_ARRAY = UCONST64(1) << 21;
197 const DecoratorSet IS_DEST_UNINITIALIZED = UCONST64(1) << 13;
198 const DecoratorSet IS_NOT_NULL = UCONST64(1) << 25;
[...]
Stefan just told me you planned to fix this in a different patch?
src/hotspot/share/oops/access.hpp
---------------------------------
Could we turn this:
123 IS_ARRAY | IS_NOT_NULL |
124 IN_HEAP;
Into a single line, with IN_HEAP first, like:
123 IN_HEAP | IS_ARRAY |
IS_NOT_NULL;
cheers,
Per
>
> That's made up of the following three changes, applied in order:
>
> (1) Renaming OOP_NOT_NULL => IS_NOT_NULL
>
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_oop_not_null/
>
> which consists of these:
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_oop_not_null_mechanical/
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_oop_not_null_manual/
>
> The mechanical part was made using the following bash commands,
> executed from src/hotspot:
>
> find . -type f -name "*.[ch]pp" \
> -exec grep -q OOP_NOT_NULL {} \; -print \
> | xargs sed -i 's/OOP_NOT_NULL/IS_NOT_NULL/'
>
> sed -i '/const DecoratorSet OOP_DECORATOR_MASK/d' share/oops/accessDecorators.hpp
>
> find . -type f -name "*.[ch]pp" \
> -exec grep -q OOP_DECORATOR_MASK {} \; -print \
> | xargs sed -i 's/OOP_DECORATOR_MASK/IS_NOT_NULL/'
>
> (2) Renaming AS_DEST_NOT_INITIALIZED to IS_DEST_UNINITIALIZED
>
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_as_dest_not_initialized/
>
> which consists of these:
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_as_dest_not_initialized_mechanical/
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_as_dest_not_initialized_manual/
>
> The mechanical part was made using the following bash command,
> executed from src/hotspot:
>
> find . -type f -name "*.[ch]pp" \
> -exec grep -q AS_DEST_NOT_INITIALIZED {} \; -print \
> | xargs sed -i 's/AS_DEST_NOT_INITIALIZED/IS_DEST_UNINITIALIZED/'
>
> (3) Renaming IN_HEAP_ARRAY to IN_ARRAY
>
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_in_heap_array/
>
> which consists of these:
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_in_heap_array_mechanical/
> http://cr.openjdk.java.net/~kbarrett/8205459/rename_in_heap_array_manual/
>
> The mechanical part was made using the following bash commands,
> executed from src/hotspot:
>
> find . -type f -name "*.[ch]pp" \
> -exec grep -q IN_HEAP_ARRAY {} \; -print \
> | xargs sed -i 's/IN_HEAP_ARRAY/IS_ARRAY/'
>
> cd cpu
> find . -type f -name "*.[ch]pp" \
> -exec grep -q "bool on_array = " {} \; -print \
> | xargs sed -i 's/on_array/is_array/'
>
>
More information about the hotspot-dev
mailing list