Currently, cmpxchd uses one more argument than cmpxchgw, cmpxchgh and cmpxchgb and supports more features:
- cmpxchd supports specifying a Label for the failure branch target.
- cmpxchd supports specifying an immediate value for compare_value by using RegisterOrConstant.
These feature are also useful for the other types.
In addition, it is confusing not to have the same argument list. (The extra temp registers for cmpxchgh and cmpxchgb are only needed for older processors and can be removed with JDK-8331859.)
- cmpxchd supports specifying a Label for the failure branch target.
- cmpxchd supports specifying an immediate value for compare_value by using RegisterOrConstant.
These feature are also useful for the other types.
In addition, it is confusing not to have the same argument list. (The extra temp registers for cmpxchgh and cmpxchgb are only needed for older processors and can be removed with JDK-8331859.)
- relates to
-
JDK-8339411 [PPC64] cmpxchgw/h/b doesn't handle external Label
- Resolved
- links to
-
Commit(master) openjdk/jdk/2edf574f
-
Review(master) openjdk/jdk/20689