100 * by the intrinsic (if any).</li>
101 * </ul>
102 *
103 * Persons not directly involved with maintaining the Java libraries or the
104 * HotSpot VM can safely ignore the fact that a method is annotated with
105 * {@code @HotSpotIntrinsicCandidate}.
106 *
107 * The HotSpot VM defines (internally) a list of intrinsics. Not all intrinsic
108 * are available on all platforms supported by the HotSpot VM. Furthermore,
109 * the availability of an intrinsic on a given platform depends on the
110 * configuration of the HotSpot VM (e.g., the set of VM flags enabled).
111 * Therefore, annotating a method with {@code @HotSpotIntrinsicCandidate} does
112 * not guarantee that the marked method is intrinsified by the HotSpot VM.
113 *
114 * If the {@code CheckIntrinsics} VM flag is enabled, the HotSpot VM checks
115 * (when loading a class) that (1) all methods of that class that are also on
116 * the VM's list of intrinsics are annotated with {@code @HotSpotIntrinsicCandidate}
117 * and that (2) for all methods of that class annotated with
118 * {@code @HotSpotIntrinsicCandidate} there is an intrinsic in the list.
119 *
120 * @since 1.9
121 */
122 @Target({ElementType.METHOD, ElementType.CONSTRUCTOR})
123 @Retention(RetentionPolicy.RUNTIME)
124 public @interface HotSpotIntrinsicCandidate {
125 }
|
100 * by the intrinsic (if any).</li>
101 * </ul>
102 *
103 * Persons not directly involved with maintaining the Java libraries or the
104 * HotSpot VM can safely ignore the fact that a method is annotated with
105 * {@code @HotSpotIntrinsicCandidate}.
106 *
107 * The HotSpot VM defines (internally) a list of intrinsics. Not all intrinsic
108 * are available on all platforms supported by the HotSpot VM. Furthermore,
109 * the availability of an intrinsic on a given platform depends on the
110 * configuration of the HotSpot VM (e.g., the set of VM flags enabled).
111 * Therefore, annotating a method with {@code @HotSpotIntrinsicCandidate} does
112 * not guarantee that the marked method is intrinsified by the HotSpot VM.
113 *
114 * If the {@code CheckIntrinsics} VM flag is enabled, the HotSpot VM checks
115 * (when loading a class) that (1) all methods of that class that are also on
116 * the VM's list of intrinsics are annotated with {@code @HotSpotIntrinsicCandidate}
117 * and that (2) for all methods of that class annotated with
118 * {@code @HotSpotIntrinsicCandidate} there is an intrinsic in the list.
119 *
120 * @since 9
121 */
122 @Target({ElementType.METHOD, ElementType.CONSTRUCTOR})
123 @Retention(RetentionPolicy.RUNTIME)
124 public @interface HotSpotIntrinsicCandidate {
125 }
|