comparison src/share/vm/ci/ciSignature.hpp @ 4001:5eb9169b1a14

7092712: JSR 292: unloaded invokedynamic call sites can lead to a crash with signature types not on BCP Reviewed-by: jrose, never
author twisti
date Wed, 12 Oct 2011 21:00:13 -0700
parents ddd894528dbc
children 1d7922586cf6
comparison
equal deleted inserted replaced
4000:0abefdb54d21 4001:5eb9169b1a14
41 GrowableArray<ciType*>* _types; 41 GrowableArray<ciType*>* _types;
42 int _size; 42 int _size;
43 int _count; 43 int _count;
44 44
45 friend class ciMethod; 45 friend class ciMethod;
46 friend class ciObjectFactory;
46 47
47 ciSignature(ciKlass* accessing_klass, constantPoolHandle cpool, ciSymbol* signature); 48 ciSignature(ciKlass* accessing_klass, constantPoolHandle cpool, ciSymbol* signature);
48 49
49 void get_all_klasses(); 50 void get_all_klasses();
50 51
51 Symbol* get_symbol() const { return _symbol->get_symbol(); } 52 Symbol* get_symbol() const { return _symbol->get_symbol(); }
52 53
53 public: 54 public:
54 ciSymbol* as_symbol() const { return _symbol; } 55 ciSymbol* as_symbol() const { return _symbol; }
56 ciKlass* accessing_klass() const { return _accessing_klass; }
55 57
56 ciType* return_type() const; 58 ciType* return_type() const;
57 ciType* type_at(int index) const; 59 ciType* type_at(int index) const;
58 60
59 int size() const { return _size; } 61 int size() const { return _size; }
60 int count() const { return _count; } 62 int count() const { return _count; }
61 63
64 bool equals(ciSignature* that);
65
62 void print_signature(); 66 void print_signature();
63 void print(); 67 void print();
64 }; 68 };
65 69
66 #endif // SHARE_VM_CI_CISIGNATURE_HPP 70 #endif // SHARE_VM_CI_CISIGNATURE_HPP