src/cpu/x86/vm/c1_Runtime1_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7008809 Sdiff src/cpu/x86/vm

src/cpu/x86/vm/c1_Runtime1_x86.cpp

Print this page




1320     case handle_exception_id:
1321       { StubFrame f(sasm, "handle_exception", dont_gc_arguments);
1322         oop_maps = new OopMapSet();
1323         OopMap* oop_map = save_live_registers(sasm, 1, save_fpu_registers);
1324         generate_handle_exception(sasm, oop_maps, oop_map, save_fpu_registers);
1325       }
1326       break;
1327 
1328     case unwind_exception_id:
1329       { __ set_info("unwind_exception", dont_gc_arguments);
1330         // note: no stubframe since we are about to leave the current
1331         //       activation and we are calling a leaf VM function only.
1332         generate_unwind_exception(sasm);
1333       }
1334       break;
1335 
1336     case throw_array_store_exception_id:
1337       { StubFrame f(sasm, "throw_array_store_exception", dont_gc_arguments);
1338         // tos + 0: link
1339         //     + 1: return address
1340         oop_maps = generate_exception_throw(sasm, CAST_FROM_FN_PTR(address, throw_array_store_exception), false);
1341       }
1342       break;
1343 
1344     case throw_class_cast_exception_id:
1345       { StubFrame f(sasm, "throw_class_cast_exception", dont_gc_arguments);
1346         oop_maps = generate_exception_throw(sasm, CAST_FROM_FN_PTR(address, throw_class_cast_exception), true);
1347       }
1348       break;
1349 
1350     case throw_incompatible_class_change_error_id:
1351       { StubFrame f(sasm, "throw_incompatible_class_cast_exception", dont_gc_arguments);
1352         oop_maps = generate_exception_throw(sasm, CAST_FROM_FN_PTR(address, throw_incompatible_class_change_error), false);
1353       }
1354       break;
1355 
1356     case slow_subtype_check_id:
1357       {
1358         // Typical calling sequence:
1359         // __ push(klass_RInfo);  // object klass or other subclass
1360         // __ push(sup_k_RInfo);  // array element klass or other superclass




1320     case handle_exception_id:
1321       { StubFrame f(sasm, "handle_exception", dont_gc_arguments);
1322         oop_maps = new OopMapSet();
1323         OopMap* oop_map = save_live_registers(sasm, 1, save_fpu_registers);
1324         generate_handle_exception(sasm, oop_maps, oop_map, save_fpu_registers);
1325       }
1326       break;
1327 
1328     case unwind_exception_id:
1329       { __ set_info("unwind_exception", dont_gc_arguments);
1330         // note: no stubframe since we are about to leave the current
1331         //       activation and we are calling a leaf VM function only.
1332         generate_unwind_exception(sasm);
1333       }
1334       break;
1335 
1336     case throw_array_store_exception_id:
1337       { StubFrame f(sasm, "throw_array_store_exception", dont_gc_arguments);
1338         // tos + 0: link
1339         //     + 1: return address
1340         oop_maps = generate_exception_throw(sasm, CAST_FROM_FN_PTR(address, throw_array_store_exception), true);
1341       }
1342       break;
1343 
1344     case throw_class_cast_exception_id:
1345       { StubFrame f(sasm, "throw_class_cast_exception", dont_gc_arguments);
1346         oop_maps = generate_exception_throw(sasm, CAST_FROM_FN_PTR(address, throw_class_cast_exception), true);
1347       }
1348       break;
1349 
1350     case throw_incompatible_class_change_error_id:
1351       { StubFrame f(sasm, "throw_incompatible_class_cast_exception", dont_gc_arguments);
1352         oop_maps = generate_exception_throw(sasm, CAST_FROM_FN_PTR(address, throw_incompatible_class_change_error), false);
1353       }
1354       break;
1355 
1356     case slow_subtype_check_id:
1357       {
1358         // Typical calling sequence:
1359         // __ push(klass_RInfo);  // object klass or other subclass
1360         // __ push(sup_k_RInfo);  // array element klass or other superclass


src/cpu/x86/vm/c1_Runtime1_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File