$1f56e90a super-optional-call-this.js:1:1
  Registers: 8
  Blocks:    1
  Constants:
    [0] = String("method")
    [1] = Undefined

block0:
  [   0] GetLexicalEnvironment dst:reg4
  [   8] CreateLexicalEnvironment dst:reg5, parent:reg4, capacity:0, is_catch_environment:false
  [  20] CreateVariable `Base`, is_immutable:true, is_global:false, is_strict:true
  [  30] SetLexicalEnvironment environment:reg4
  [  38] NewClass dst:reg6, class_environment:reg5, class_blueprint_index:0, element_keys:[element_keys:String("method")]
  [  60] DynamicInitializeLexicalBinding `Base`, src:reg6
  [  70] CreateLexicalEnvironment dst:reg6, parent:reg4, capacity:0, is_catch_environment:false
  [  88] CreateVariable `Foo`, is_immutable:true, is_global:false, is_strict:true
  [  98] GetGlobal dst:reg5, `Base`
  [  a8] SetLexicalEnvironment environment:reg4
  [  b0] NewClass dst:reg7, super_class:reg5, class_environment:reg6, class_blueprint_index:1, element_keys:[element_keys:String("method")]
  [  d8] DynamicInitializeLexicalBinding `Foo`, src:reg7
  [  e8] GetGlobal dst:reg5, `Foo`
  [  f8] CallConstruct dst:reg6, callee:reg5, Foo
  [ 110] GetById dst:reg5, base:reg6, `method`
  [ 128] Call dst:reg7, callee:reg5, this_value:reg6, <object>.method
  [ 148] End value:reg7


Foo$fbafd3fe super-optional-call-this.js:4:1
  Registers: 8
  Blocks:    1

block0:
  [   0] CreateVariable `args`, is_immutable:false, is_global:false, is_strict:false
  [  10] CreateRestParams dst:arg0, rest_index:0
  [  20] InitializeLexicalBinding `args`, src:arg0
  [  38] GetSuperConstructor dst:reg5
  [  40] GetBinding dst:reg6, `args`
  [  58] SuperCallWithArgumentArray dst:reg7, super_constructor:reg5, arguments:reg6, is_synthetic:true
  [  70] Return value:reg7


Base$a461b108
  Registers: 5
  Blocks:    1
  Constants:
    [0] = Undefined

block0:
  [   0] End value:Undefined


method$25bff8b5 super-optional-call-this.js:6:9
  Registers: 9
  Blocks:    3
  Constants:
    [0] = Undefined

block0:
  [   0] Mov dst:reg5, src:Undefined
  [  10] ResolveThisBinding
  [  18] ResolveSuperBase dst:reg7
  [  20] GetByIdWithThis dst:reg8, base:reg7, `method`, this_value:this
  [  38] Mov2 dst1:reg5, src1:this, dst2:reg6, src2:reg8
  [  50] JumpNullish condition:reg6, true_target:block1, false_target:block2

block1:
  [  60] Mov dst:reg6, src:Undefined
  [  70] Return value:reg6

block2:
  [  78] NewArray dst:reg7
  [  88] CallWithArgumentArray dst:reg6, callee:reg6, this_value:reg5, arguments:reg7
  [  a0] Mov dst:reg5, src:Undefined
  [  b0] Return value:reg6


method$6c22ae6a
  Registers: 5
  Blocks:    1
  Constants:
    [0] = Undefined

block0:
  [   0] End value:Undefined
