33 lines
No EOL
2.3 KiB
JavaScript
33 lines
No EOL
2.3 KiB
JavaScript
export function printTree(children, indent = 0) {
|
|
if (!children.length) return
|
|
|
|
for (let child of children) {
|
|
console.log(child.char.padStart(1 + indent * 2))
|
|
printTree(child.children, indent + 1)
|
|
}
|
|
}
|
|
|
|
export function printCurrentStatus(fn) {
|
|
let opt = %GetOptimizationStatus(fn)
|
|
console.log(`${opt.toString(2).padStart(17, '0').split('').join(' ')}`)
|
|
}
|
|
export function printStatusHelperText() {
|
|
console.log(`┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬
|
|
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └─╸ is function
|
|
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └───╸ is never optimized
|
|
│ │ │ │ │ │ │ │ │ │ │ │ │ │ └─────╸ is always optimized
|
|
│ │ │ │ │ │ │ │ │ │ │ │ │ └───────╸ is maybe deoptimized
|
|
│ │ │ │ │ │ │ │ │ │ │ │ └─────────╸ is optimized
|
|
│ │ │ │ │ │ │ │ │ │ │ └───────────╸ is optimized by TurboFan
|
|
│ │ │ │ │ │ │ │ │ │ └─────────────╸ is interpreted
|
|
│ │ │ │ │ │ │ │ │ └───────────────╸ is marked for optimization
|
|
│ │ │ │ │ │ │ │ └─────────────────╸ is marked for concurrent optimization
|
|
│ │ │ │ │ │ │ └───────────────────╸ is optimizing concurrently
|
|
│ │ │ │ │ │ └─────────────────────╸ is executing
|
|
│ │ │ │ │ └───────────────────────╸ topmost frame is turbo fanned
|
|
│ │ │ │ └─────────────────────────╸ lite mode
|
|
│ │ │ └───────────────────────────╸ marked for deoptimization
|
|
│ │ └─────────────────────────────╸ baseline
|
|
│ └───────────────────────────────╸ topmost frame is interpreted
|
|
└─────────────────────────────────╸ topmost frame is baseline`)
|
|
} |