Mercurial > hg > truffle
comparison src/share/vm/runtime/sharedRuntime.hpp @ 17795:a9becfeecd1b
Merge
author | kvn |
---|---|
date | Wed, 22 Jan 2014 17:42:23 -0800 |
parents | 1174c8abbdb6 7b9127b17b7a |
children | cf9f24de0b93 |
comparison
equal
deleted
inserted
replaced
17794:3514ee402842 | 17795:a9becfeecd1b |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
628 | 628 |
629 #ifdef ASSERT | 629 #ifdef ASSERT |
630 // Captures code and signature used to generate this adapter when | 630 // Captures code and signature used to generate this adapter when |
631 // verifing adapter equivalence. | 631 // verifing adapter equivalence. |
632 unsigned char* _saved_code; | 632 unsigned char* _saved_code; |
633 int _code_length; | 633 int _saved_code_length; |
634 BasicType* _saved_sig; | |
635 int _total_args_passed; | |
636 #endif | 634 #endif |
637 | 635 |
638 void init(AdapterFingerPrint* fingerprint, address i2c_entry, address c2i_entry, address c2i_unverified_entry) { | 636 void init(AdapterFingerPrint* fingerprint, address i2c_entry, address c2i_entry, address c2i_unverified_entry) { |
639 _fingerprint = fingerprint; | 637 _fingerprint = fingerprint; |
640 _i2c_entry = i2c_entry; | 638 _i2c_entry = i2c_entry; |
641 _c2i_entry = c2i_entry; | 639 _c2i_entry = c2i_entry; |
642 _c2i_unverified_entry = c2i_unverified_entry; | 640 _c2i_unverified_entry = c2i_unverified_entry; |
643 #ifdef ASSERT | 641 #ifdef ASSERT |
644 _saved_code = NULL; | 642 _saved_code = NULL; |
645 _code_length = 0; | 643 _saved_code_length = 0; |
646 _saved_sig = NULL; | |
647 _total_args_passed = 0; | |
648 #endif | 644 #endif |
649 } | 645 } |
650 | 646 |
651 void deallocate(); | 647 void deallocate(); |
652 | 648 |
655 | 651 |
656 public: | 652 public: |
657 address get_i2c_entry() const { return _i2c_entry; } | 653 address get_i2c_entry() const { return _i2c_entry; } |
658 address get_c2i_entry() const { return _c2i_entry; } | 654 address get_c2i_entry() const { return _c2i_entry; } |
659 address get_c2i_unverified_entry() const { return _c2i_unverified_entry; } | 655 address get_c2i_unverified_entry() const { return _c2i_unverified_entry; } |
660 | |
661 address base_address(); | 656 address base_address(); |
662 void relocate(address new_base); | 657 void relocate(address new_base); |
663 | 658 |
664 AdapterFingerPrint* fingerprint() const { return _fingerprint; } | 659 AdapterFingerPrint* fingerprint() const { return _fingerprint; } |
665 | 660 |
667 return (AdapterHandlerEntry*)BasicHashtableEntry<mtCode>::next(); | 662 return (AdapterHandlerEntry*)BasicHashtableEntry<mtCode>::next(); |
668 } | 663 } |
669 | 664 |
670 #ifdef ASSERT | 665 #ifdef ASSERT |
671 // Used to verify that code generated for shared adapters is equivalent | 666 // Used to verify that code generated for shared adapters is equivalent |
672 void save_code(unsigned char* code, int length, int total_args_passed, BasicType* sig_bt); | 667 void save_code (unsigned char* code, int length); |
673 bool compare_code(unsigned char* code, int length, int total_args_passed, BasicType* sig_bt); | 668 bool compare_code(unsigned char* code, int length); |
674 #endif | 669 #endif |
675 | 670 |
676 //virtual void print_on(outputStream* st) const; DO NOT USE | 671 //virtual void print_on(outputStream* st) const; DO NOT USE |
677 void print_adapter_on(outputStream* st) const; | 672 void print_adapter_on(outputStream* st) const; |
678 }; | 673 }; |
687 | 682 |
688 public: | 683 public: |
689 | 684 |
690 static AdapterHandlerEntry* new_entry(AdapterFingerPrint* fingerprint, | 685 static AdapterHandlerEntry* new_entry(AdapterFingerPrint* fingerprint, |
691 address i2c_entry, address c2i_entry, address c2i_unverified_entry); | 686 address i2c_entry, address c2i_entry, address c2i_unverified_entry); |
692 static nmethod* create_native_wrapper(methodHandle method, int compile_id); | 687 static void create_native_wrapper(methodHandle method); |
693 static AdapterHandlerEntry* get_adapter(methodHandle method); | 688 static AdapterHandlerEntry* get_adapter(methodHandle method); |
694 | 689 |
695 #ifdef HAVE_DTRACE_H | 690 #ifdef HAVE_DTRACE_H |
696 static nmethod* create_dtrace_nmethod (methodHandle method); | 691 static nmethod* create_dtrace_nmethod (methodHandle method); |
697 #endif // HAVE_DTRACE_H | 692 #endif // HAVE_DTRACE_H |