Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8082535 | emb-9 | Stefan Karlsson | P3 | Resolved | Fixed | team |
Some of our GCs have GC specific entry points and code placed in the oopDesc and Klass files. They are used to implement marking, scavenging and adjusting of oops in the the objects. See the following functions:
Mark Sweep:
void follow_contents(void);
int adjust_pointers();
Parallel Scavenge
void push_contents(PSPromotionManager* pm);
Parallel Old
void update_contents(ParCompactionManager* cm);
void follow_contents(ParCompactionManager* cm);
WithJDK-8075955 we'll start to use parts of the oop_oop_iterate framework to implement these functions, and as a preparation patch I'd like to minimize the number of places where these functions are directly called from Mark Sweep, Parallel Scavenge and Parallel Old.
The proposal is to add thin wrapper functions to the three GCs, and let these wrappers be the only callers of the functions above.
Mark Sweep:
void follow_contents(void);
int adjust_pointers();
Parallel Scavenge
void push_contents(PSPromotionManager* pm);
Parallel Old
void update_contents(ParCompactionManager* cm);
void follow_contents(ParCompactionManager* cm);
With
The proposal is to add thin wrapper functions to the three GCs, and let these wrappers be the only callers of the functions above.
- backported by
-
JDK-8082535 Reduce calls to the GC specific object visitors in oopDesc
-
- Resolved
-