mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-26 06:14:49 +02:00
6921922: fix for 6911204 breaks tagged stack interpreter
Reviewed-by: kvn
This commit is contained in:
parent
0c27c5537e
commit
aecc4f4081
3 changed files with 171 additions and 60 deletions
|
@ -540,13 +540,30 @@ class AdapterHandlerEntry : public BasicHashtableEntry {
|
|||
address _c2i_entry;
|
||||
address _c2i_unverified_entry;
|
||||
|
||||
#ifdef ASSERT
|
||||
// Captures code and signature used to generate this adapter when
|
||||
// verifing adapter equivalence.
|
||||
unsigned char* _saved_code;
|
||||
int _code_length;
|
||||
BasicType* _saved_sig;
|
||||
int _total_args_passed;
|
||||
#endif
|
||||
|
||||
void init(AdapterFingerPrint* fingerprint, address i2c_entry, address c2i_entry, address c2i_unverified_entry) {
|
||||
_fingerprint = fingerprint;
|
||||
_i2c_entry = i2c_entry;
|
||||
_c2i_entry = c2i_entry;
|
||||
_c2i_unverified_entry = c2i_unverified_entry;
|
||||
#ifdef ASSERT
|
||||
_saved_code = NULL;
|
||||
_code_length = 0;
|
||||
_saved_sig = NULL;
|
||||
_total_args_passed = 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
void deallocate();
|
||||
|
||||
// should never be used
|
||||
AdapterHandlerEntry();
|
||||
|
||||
|
@ -566,6 +583,12 @@ class AdapterHandlerEntry : public BasicHashtableEntry {
|
|||
return (AdapterHandlerEntry*)BasicHashtableEntry::next();
|
||||
}
|
||||
|
||||
#ifdef ASSERT
|
||||
// Used to verify that code generated for shared adapters is equivalent
|
||||
void save_code(unsigned char* code, int length, int total_args_passed, BasicType* sig_bt);
|
||||
bool compare_code(unsigned char* code, int length, int total_args_passed, BasicType* sig_bt);
|
||||
#endif
|
||||
|
||||
#ifndef PRODUCT
|
||||
void print();
|
||||
#endif /* PRODUCT */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue