@@ -8019,7 +8019,7 @@ mod hir_opt_tests {
80198019 v22:BasicObject = LoadField v18, :block@0x1010
80208020 Jump bb6(v22, v22)
80218021 bb6(v16:BasicObject, v17:BasicObject):
8022- v29:BasicObject = Send v14, &block, :map, v16 # SendFallbackReason: Complex argument passing
8022+ v29:BasicObject = Send v14, &block, :map, v16 # SendFallbackReason: Send: block argument is not nil
80238023 CheckInterrupts
80248024 Return v29
80258025 " ) ;
@@ -8057,7 +8057,7 @@ mod hir_opt_tests {
80578057 v22:BasicObject = LoadField v18, :block@0x1002
80588058 Jump bb6(v22, v22)
80598059 bb6(v16:BasicObject, v17:BasicObject):
8060- v29:BasicObject = Send v14, &block, :map, v16 # SendFallbackReason: Complex argument passing
8060+ v29:BasicObject = Send v14, &block, :map, v16 # SendFallbackReason: Send: block argument is not nil
80618061 CheckInterrupts
80628062 Return v29
80638063 " ) ;
@@ -8096,7 +8096,7 @@ mod hir_opt_tests {
80968096 v17:BasicObject = LoadField v13, :block@0x1010
80978097 Jump bb6(v17)
80988098 bb6(v12:BasicObject):
8099- v24:BasicObject = Send v10, &block, :map, v12 # SendFallbackReason: Complex argument passing
8099+ v24:BasicObject = Send v10, &block, :map, v12 # SendFallbackReason: Send: block argument is not nil
81008100 CheckInterrupts
81018101 Return v24
81028102 " ) ;
@@ -8218,7 +8218,7 @@ mod hir_opt_tests {
82188218 Jump bb3(v5, v6)
82198219 bb3(v8:BasicObject, v9:NilClass):
82208220 v13:StaticSymbol[:to_s] = Const Value(VALUE(0x1000))
8221- v19:BasicObject = Send v8, &block, :foo, v13 # SendFallbackReason: Complex argument passing
8221+ v19:BasicObject = Send v8, &block, :foo, v13 # SendFallbackReason: Send: block argument is not nil
82228222 CheckInterrupts
82238223 Return v19
82248224 " ) ;
@@ -8249,9 +8249,12 @@ mod hir_opt_tests {
82498249 Jump bb3(v5, v6)
82508250 bb3(v8:BasicObject, v9:NilClass):
82518251 v13:NilClass = Const Value(nil)
8252- v19:BasicObject = Send v8, &block, :foo, v13 # SendFallbackReason: Complex argument passing
8252+ v25:NilClass = GuardBitEquals v13, Value(nil)
8253+ PatchPoint MethodRedefined(NilClass@0x1000, foo@0x1008, cme:0x1010)
8254+ v27:NilClass = GuardType v8, NilClass
8255+ v29:Fixnum[42] = Const Value(42)
82538256 CheckInterrupts
8254- Return v19
8257+ Return v29
82558258 " ) ;
82568259 }
82578260
@@ -11602,7 +11605,7 @@ mod hir_opt_tests {
1160211605 Jump bb3(v4)
1160311606 bb3(v6:BasicObject):
1160411607 v11:StaticSymbol[:the_block] = Const Value(VALUE(0x1000))
11605- v13:BasicObject = Send v6, &block, :callee, v11 # SendFallbackReason: Complex argument passing
11608+ v13:BasicObject = Send v6, &block, :callee, v11 # SendFallbackReason: Send: block argument is not nil
1160611609 CheckInterrupts
1160711610 Return v13
1160811611 " ) ;
@@ -11645,7 +11648,7 @@ mod hir_opt_tests {
1164511648 v22:BasicObject = LoadField v18, :block@0x1010
1164611649 Jump bb6(v22, v22)
1164711650 bb6(v16:BasicObject, v17:BasicObject):
11648- v29:BasicObject = Send v14, &block, :map, v16 # SendFallbackReason: Complex argument passing
11651+ v29:BasicObject = Send v14, &block, :map, v16 # SendFallbackReason: Send: block argument is not nil
1164911652 CheckInterrupts
1165011653 Return v29
1165111654 " ) ;
0 commit comments