Mercurial > hg > graal-compiler
comparison src/share/vm/opto/runtime.cpp @ 1763:d6f45b55c972
4809552: Optimize Arrays.fill(...)
Reviewed-by: kvn
author | never |
---|---|
date | Fri, 27 Aug 2010 17:33:49 -0700 |
parents | c18cbe5936b8 |
children | 75588558f1bf |
comparison
equal
deleted
inserted
replaced
1731:ee5cc9e78493 | 1763:d6f45b55c972 |
---|---|
643 // This signature is like System.arraycopy, except that it returns status. | 643 // This signature is like System.arraycopy, except that it returns status. |
644 return make_arraycopy_Type(ac_generic); | 644 return make_arraycopy_Type(ac_generic); |
645 } | 645 } |
646 | 646 |
647 | 647 |
648 const TypeFunc* OptoRuntime::array_fill_Type() { | |
649 // create input type (domain) | |
650 const Type** fields = TypeTuple::fields(3); | |
651 fields[TypeFunc::Parms+0] = TypePtr::NOTNULL; | |
652 fields[TypeFunc::Parms+1] = TypeInt::INT; | |
653 fields[TypeFunc::Parms+2] = TypeInt::INT; | |
654 const TypeTuple *domain = TypeTuple::make(TypeFunc::Parms + 3, fields); | |
655 | |
656 // create result type | |
657 fields = TypeTuple::fields(1); | |
658 fields[TypeFunc::Parms+0] = NULL; // void | |
659 const TypeTuple *range = TypeTuple::make(TypeFunc::Parms, fields); | |
660 | |
661 return TypeFunc::make(domain, range); | |
662 } | |
663 | |
648 //------------- Interpreter state access for on stack replacement | 664 //------------- Interpreter state access for on stack replacement |
649 const TypeFunc* OptoRuntime::osr_end_Type() { | 665 const TypeFunc* OptoRuntime::osr_end_Type() { |
650 // create input type (domain) | 666 // create input type (domain) |
651 const Type **fields = TypeTuple::fields(1); | 667 const Type **fields = TypeTuple::fields(1); |
652 fields[TypeFunc::Parms+0] = TypeRawPtr::BOTTOM; // OSR temp buf | 668 fields[TypeFunc::Parms+0] = TypeRawPtr::BOTTOM; // OSR temp buf |