< prev index next >
src/hotspot/share/runtime/signature.hpp
Print this page
rev 54022 : 8220366: Optimize Symbol handling in ClassVerifier and SignatureStream
Reviewed-by: TBD
*** 88,98 ****
// Constructors
SignatureIterator(Symbol* signature);
// Iteration
- void dispatch_field(); // dispatches once for field signatures
void iterate_parameters(); // iterates over parameters only
void iterate_parameters( uint64_t fingerprint );
void iterate_returntype(); // iterates over returntype only
void iterate(); // iterates over whole signature
// Returns the word index of the current parameter;
--- 88,97 ----
*** 361,372 ****
Symbol* _signature;
int _begin;
int _end;
BasicType _type;
bool _at_return_type;
! GrowableArray<Symbol*>* _names; // symbols created while parsing signature
!
public:
bool at_return_type() const { return _at_return_type; }
bool is_done() const;
void next_non_primitive(int t);
void next() {
--- 360,371 ----
Symbol* _signature;
int _begin;
int _end;
BasicType _type;
bool _at_return_type;
! Symbol* _previous_name; // cache the previously looked up symbol to avoid lookups
! GrowableArray<Symbol*>* _names; // symbols created while parsing that need to be dereferenced
public:
bool at_return_type() const { return _at_return_type; }
bool is_done() const;
void next_non_primitive(int t);
void next() {
*** 400,410 ****
bool is_object() const; // True if this argument is an object
bool is_array() const; // True if this argument is an array
BasicType type() const { return _type; }
Symbol* as_symbol(TRAPS);
! enum FailureMode { ReturnNull, CNFException, NCDFError };
Klass* as_klass(Handle class_loader, Handle protection_domain, FailureMode failure_mode, TRAPS);
oop as_java_mirror(Handle class_loader, Handle protection_domain, FailureMode failure_mode, TRAPS);
const u1* raw_bytes() { return _signature->bytes() + _begin; }
int raw_length() { return _end - _begin; }
--- 399,409 ----
bool is_object() const; // True if this argument is an object
bool is_array() const; // True if this argument is an array
BasicType type() const { return _type; }
Symbol* as_symbol(TRAPS);
! enum FailureMode { ReturnNull, NCDFError };
Klass* as_klass(Handle class_loader, Handle protection_domain, FailureMode failure_mode, TRAPS);
oop as_java_mirror(Handle class_loader, Handle protection_domain, FailureMode failure_mode, TRAPS);
const u1* raw_bytes() { return _signature->bytes() + _begin; }
int raw_length() { return _end - _begin; }
*** 421,431 ****
static bool is_valid_signature(Symbol* sig);
static bool is_valid_method_signature(Symbol* sig);
static bool is_valid_type_signature(Symbol* sig);
private:
-
static ssize_t is_valid_type(const char*, ssize_t);
- static bool invalid_name_char(char);
};
#endif // SHARE_RUNTIME_SIGNATURE_HPP
--- 420,428 ----
< prev index next >