Currently, Traversal GC is activated by selecting the 'traversal' heuristic. However, Traversal GC is not exactly a heuristic. It is a whole different mode, that is structurally different from the normal Shenandoah GC operation. In addition to that, it would be useful to have several Traveral GC heuristics, for example aggressive for testing, compact for low memory footprint, passive to drive Traversal without barriers, etc. I propose to add a new option -XX:ShenandoahGCMode=normal|traversal that selects the mode of operation, and then Traversal GC can also pick up different heuristics via the usual -XX:ShenandoahGCHeuristics option.