+echo -sandbox sandbox transactions
+echo -dcopts conflict optimizations for transactional memory
+echo -transstats generates transaction stats on commits and aborts
+echo -inlineatomic depth inline methods inside of transactions to specified depth
+echo "-stmarray partial array treatment"
+echo "-dualview dual view of arrays"
+echo "-hybrid use fission only when it looks like a good choice"
+echo "-numa numa aware"
+echo "-eventmonitor turn on transaction event trace recording"
+echo
+echo OOOJava options
+echo -coreprof, turn on profiling API
+echo -coreprof-eventwords NUM, space in words/thread for coreprof events
+echo -coreprof-checkoverflow, ONLY use for debugging event overflow
+echo -coreprof-enable EVENTNAME, only enable desired events to reduce overhead
+echo EVENTNAME can be: cpe_main, cpe_runmalloc, cpe_runfree, cpe_poolalloc, cpe_count_poolalloc, cpe_count_poolreuse, cpe_workschedgrab, cpe_taskdispatch, cpe_preparememq, cpe_taskexecute, cpe_taskretire, cpe_taskstallvar, cpe_taskstallmem
+echo "-ooojava <numberofcores> <maxseseage>"
+echo -ooodebug general OOOJava debugging messages
+echo -ooodebug-disable-task-mem-pool this is a tricky module, disable for simpler runtime
+echo -mempool-detect-misuse turn on to find code misusing pool-allocated records
+echo -rcr turn on runtime conflict resolver
+echo -rcr_debug Shows weakly connected heaproots and which allocation sites were considered for traversal
+echo -rcr_debug_verbose in addition to above, also prints out effects passed in, internal representation of effects, and internal representation of reach graph
+echo -squeue use single queue
+echo -corepin use core pinning
+echo -nostalltr turn off RCR traversers that only handle conflicts between task and stallsite
+echo -nolock turn off synchronization lock
+echo
+echo Disjoint Reachability Analysis options
+echo -disjoint enable analysis
+echo -disjoint-k set k-limit for heap nodes per allocation site
+echo "-disjoint-write-dots <all/final> write reach graphs for all method sols. or only final sols."
+echo -disjoint-write-initial-contexts write reach graphs for callee initial contexts from all call sites
+echo -disjoint-write-ihms write reach graphs for each call site\'s Initial Heap Model
+echo "-disjoint-alias-file <filename> <normal/tabbed> write sharing for normal human reading or LaTeX tabbed"
+echo "-disjoint-debug-callsite <callee> <caller> <visit to start> <num caps> <T/F stop after>"
+echo " To debug call site, give callee caller symbols (ie foo) the analysis visit to start capturing, num captures to take, and whether to halt analysis after capturing"
+echo "-disjoint-debug-snap-method <method> <visit to start> <num caps> <T/F stop after>"
+echo " To take snapshots at statements, give method symbol, the analysis visit to start capturing, num captures to take, and whether to halt analsyis after capturing"
+echo "-disjoint-dvisit-stack use stack strat to visit descriptors (tasks or methods)"
+echo -disjoint-dvisit-stack-callees-on-top alternate stack strat
+echo -disjoint-dvisit-pqueue use prio. q strat to visit descriptors
+echo -disjoint-desire-determinism set above interproc for determinism
+echo -disjoint-debug-scheduling debug when methods are scheduled for analysis
+echo
+echo -pointsto-check-v-runtime check allocation site of pointer targets at runtime to help verify heap analysis results
+echo
+echo "-mlp <num cores> <max sese age> build mlp code"
+echo -mlpdebug if mlp, report progress and interim results
+echo
+echo DSM options
+echo -dsm distributed shared memory