mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-20 02:54:35 +02:00
7153771: array bound check elimination for c1
When possible optimize out array bound checks, inserting predicates when needed. Reviewed-by: never, kvn, twisti
This commit is contained in:
parent
2f4ecb86a2
commit
06ef4cddf7
40 changed files with 2861 additions and 153 deletions
|
@ -412,6 +412,8 @@ class LIRGenerator: public InstructionVisitor, public BlockClosure {
|
|||
case If::leq: l = lir_cond_lessEqual; break;
|
||||
case If::geq: l = lir_cond_greaterEqual; break;
|
||||
case If::gtr: l = lir_cond_greater; break;
|
||||
case If::aeq: l = lir_cond_aboveEqual; break;
|
||||
case If::beq: l = lir_cond_belowEqual; break;
|
||||
};
|
||||
return l;
|
||||
}
|
||||
|
@ -534,6 +536,8 @@ class LIRGenerator: public InstructionVisitor, public BlockClosure {
|
|||
virtual void do_ProfileInvoke (ProfileInvoke* x);
|
||||
virtual void do_RuntimeCall (RuntimeCall* x);
|
||||
virtual void do_MemBar (MemBar* x);
|
||||
virtual void do_RangeCheckPredicate(RangeCheckPredicate* x);
|
||||
virtual void do_Assert (Assert* x);
|
||||
};
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue