RFR: 8031639: make dependency management (mostly) ci independent (original) (raw)
Christian Thalinger christian.thalinger at oracle.com
Mon Jan 13 22:42:28 PST 2014
- Previous message: RFR: 8031639: make dependency management (mostly) ci independent
- Next message: RFR: 8031639: make dependency management (mostly) ci independent
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
I like the change. What was the motivation for choosing:
positive: metadata, negative: object
If it would be the other way around you wouldn't have to negate the sort key:
- // Used to sort values in ascending order of index() with metadata values preceding object values
- int sort_key() const { return -_id; }
src/share/vm/code/dependencies.hpp:
- bool note_dep_seen(int dept, DepValue x) {
- assert(dept < BitsPerInt, "oops");
- // place metadata deps at even indexes, object deps at odd indexes
- int x_id = x.is_metadata() ? x.index() * 2 : (x.index() * 2) + 1;
This means we’re using twice as much memory for seen dependencies but I guess it doesn’t matter much.
On a related note to the comment above if _id would be:
_id = (rec->find_index(metadata) << 1) | 1;
we would have unique, ready-to-use indexes. Is there a reason why metadata and object values need to be grouped together?
On Jan 13, 2014, at 2:55 PM, Doug Simon <doug.simon at oracle.com> wrote:
Hi all,
I would like to request a review for a change to the Dependencies class such that it can be used to register assumptions based on either ci* values or raw values. The motivation is support compilers (such as Graal) that don't use the ci interface. jbs: https://bugs.openjdk.java.net/browse/JDK-8031639 webrev: http://cr.openjdk.java.net/~dnsimon/JDK-8031639/ -Doug
- Previous message: RFR: 8031639: make dependency management (mostly) ci independent
- Next message: RFR: 8031639: make dependency management (mostly) ci independent
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the hotspot-compiler-dev mailing list