379 TargetIsLoadedFlag, |
379 TargetIsLoadedFlag, |
380 TargetIsStrictfpFlag, |
380 TargetIsStrictfpFlag, |
381 UnorderedIsTrueFlag, |
381 UnorderedIsTrueFlag, |
382 NeedsPatchingFlag, |
382 NeedsPatchingFlag, |
383 ThrowIncompatibleClassChangeErrorFlag, |
383 ThrowIncompatibleClassChangeErrorFlag, |
|
384 InvokeSpecialReceiverCheckFlag, |
384 ProfileMDOFlag, |
385 ProfileMDOFlag, |
385 IsLinkedInBlockFlag, |
386 IsLinkedInBlockFlag, |
386 NeedsRangeCheckFlag, |
387 NeedsRangeCheckFlag, |
387 InWorkListFlag, |
388 InWorkListFlag, |
388 DeoptimizeOnException, |
389 DeoptimizeOnException, |
1454 set_flag(ThrowIncompatibleClassChangeErrorFlag, true); |
1455 set_flag(ThrowIncompatibleClassChangeErrorFlag, true); |
1455 } |
1456 } |
1456 bool is_incompatible_class_change_check() const { |
1457 bool is_incompatible_class_change_check() const { |
1457 return check_flag(ThrowIncompatibleClassChangeErrorFlag); |
1458 return check_flag(ThrowIncompatibleClassChangeErrorFlag); |
1458 } |
1459 } |
|
1460 void set_invokespecial_receiver_check() { |
|
1461 set_flag(InvokeSpecialReceiverCheckFlag, true); |
|
1462 } |
|
1463 bool is_invokespecial_receiver_check() const { |
|
1464 return check_flag(InvokeSpecialReceiverCheckFlag); |
|
1465 } |
|
1466 |
|
1467 virtual bool needs_exception_state() const { |
|
1468 return !is_invokespecial_receiver_check(); |
|
1469 } |
1459 |
1470 |
1460 ciType* declared_type() const; |
1471 ciType* declared_type() const; |
1461 }; |
1472 }; |
1462 |
1473 |
1463 |
1474 |