comparison src/share/vm/code/dependencies.hpp @ 14726:92aa6797d639

Backed out merge changeset: b51e29501f30 Backed out merge revision to its first parent (8f483e200405)
author Doug Simon <doug.simon@oracle.com>
date Mon, 24 Mar 2014 21:30:43 +0100
parents b51e29501f30
children
comparison
equal deleted inserted replaced
14719:0bdd0d157040 14726:92aa6797d639
615 615
616 static void print_statistics() PRODUCT_RETURN; 616 static void print_statistics() PRODUCT_RETURN;
617 }; 617 };
618 618
619 619
620 class DependencySignature : public ResourceObj { 620 class DependencySignature : public GenericHashtableEntry<DependencySignature, ResourceObj> {
621 private: 621 private:
622 int _args_count; 622 int _args_count;
623 uintptr_t _argument_hash[Dependencies::max_arg_count]; 623 uintptr_t _argument_hash[Dependencies::max_arg_count];
624 Dependencies::DepType _type; 624 Dependencies::DepType _type;
625 625
630 for (int i = 0; i < _args_count; i++) { 630 for (int i = 0; i < _args_count; i++) {
631 _argument_hash[i] = dep.get_identifier(i); 631 _argument_hash[i] = dep.get_identifier(i);
632 } 632 }
633 } 633 }
634 634
635 static bool equals(DependencySignature const& s1, DependencySignature const& s2); 635 bool equals(DependencySignature* sig) const;
636 static unsigned hash (DependencySignature const& s1) { return s1.arg(0) >> 2; } 636 uintptr_t key() const { return _argument_hash[0] >> 2; }
637 637
638 int args_count() const { return _args_count; } 638 int args_count() const { return _args_count; }
639 uintptr_t arg(int idx) const { return _argument_hash[idx]; } 639 uintptr_t arg(int idx) const { return _argument_hash[idx]; }
640 Dependencies::DepType type() const { return _type; } 640 Dependencies::DepType type() const { return _type; }
641
642 }; 641 };
643 642
644 643
645 // Every particular DepChange is a sub-class of this class. 644 // Every particular DepChange is a sub-class of this class.
646 class DepChange : public StackObj { 645 class DepChange : public StackObj {