2888 // same_locals_1_stack_item_frame;
2889 // same_locals_1_stack_item_frame_extended;
2890 // chop_frame;
2891 // same_frame_extended;
2892 // append_frame;
2893 // full_frame;
2894 // }
2895
2896 assert(stackmap_p + 1 <= stackmap_end, "no room for frame_type");
2897 // The Linux compiler does not like frame_type to be u1 or u2. It
2898 // issues the following warning for the first if-statement below:
2899 //
2900 // "warning: comparison is always true due to limited range of data type"
2901 //
2902 u4 frame_type = *stackmap_p;
2903 stackmap_p++;
2904
2905 // same_frame {
2906 // u1 frame_type = SAME; /* 0-63 */
2907 // }
2908 if (frame_type >= 0 && frame_type <= 63) {
2909 // nothing more to do for same_frame
2910 }
2911
2912 // same_locals_1_stack_item_frame {
2913 // u1 frame_type = SAME_LOCALS_1_STACK_ITEM; /* 64-127 */
2914 // verification_type_info stack[1];
2915 // }
2916 else if (frame_type >= 64 && frame_type <= 127) {
2917 rewrite_cp_refs_in_verification_type_info(stackmap_p, stackmap_end,
2918 calc_number_of_entries, frame_type, THREAD);
2919 }
2920
2921 // reserved for future use
2922 else if (frame_type >= 128 && frame_type <= 246) {
2923 // nothing more to do for reserved frame_types
2924 }
2925
2926 // same_locals_1_stack_item_frame_extended {
2927 // u1 frame_type = SAME_LOCALS_1_STACK_ITEM_EXTENDED; /* 247 */
2928 // u2 offset_delta;
|
2888 // same_locals_1_stack_item_frame;
2889 // same_locals_1_stack_item_frame_extended;
2890 // chop_frame;
2891 // same_frame_extended;
2892 // append_frame;
2893 // full_frame;
2894 // }
2895
2896 assert(stackmap_p + 1 <= stackmap_end, "no room for frame_type");
2897 // The Linux compiler does not like frame_type to be u1 or u2. It
2898 // issues the following warning for the first if-statement below:
2899 //
2900 // "warning: comparison is always true due to limited range of data type"
2901 //
2902 u4 frame_type = *stackmap_p;
2903 stackmap_p++;
2904
2905 // same_frame {
2906 // u1 frame_type = SAME; /* 0-63 */
2907 // }
2908 if (frame_type <= 63) {
2909 // nothing more to do for same_frame
2910 }
2911
2912 // same_locals_1_stack_item_frame {
2913 // u1 frame_type = SAME_LOCALS_1_STACK_ITEM; /* 64-127 */
2914 // verification_type_info stack[1];
2915 // }
2916 else if (frame_type >= 64 && frame_type <= 127) {
2917 rewrite_cp_refs_in_verification_type_info(stackmap_p, stackmap_end,
2918 calc_number_of_entries, frame_type, THREAD);
2919 }
2920
2921 // reserved for future use
2922 else if (frame_type >= 128 && frame_type <= 246) {
2923 // nothing more to do for reserved frame_types
2924 }
2925
2926 // same_locals_1_stack_item_frame_extended {
2927 // u1 frame_type = SAME_LOCALS_1_STACK_ITEM_EXTENDED; /* 247 */
2928 // u2 offset_delta;
|