Bug 169715

Summary: WebAssembly: spec-tests/address.wast.js fails with "no color" on ARM64
Product: WebKit Reporter: JF Bastien <jfbastien>
Component: JavaScriptCoreAssignee: Saam Barati <sbarati>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: fpizlo, jfbastien, keith_miller, mark.lam, msaboff, sbarati, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=170683
Bug Depends on:    
Bug Blocks: 161709    
Attachments:
Description Flags
dump none

Description JF Bastien 2017-03-15 15:54:01 PDT
On ARM64:

jsc -m --useWebAssembly=1 ./spec-tests//address.wast.js


Yields:


FATAL: No color for %tmp12
Code:
BB#0: ; frequency = 1.000000
    Patch &Patchpoint0, %r1, @4
    Move %r1, 24(%fp), @8
    Move $0, %r1, $0(@10)
    Move %r1, 16(%fp), @12
    Nop @13
    Patch &Patchpoint0, %r21, @13
    Move32 %r0, %r22, @20
    Load8<Traps> (%r20,%r22), %r0, @22
    Move 72(%r21), %r1, @23
    Load8 5(%r1), %r1, @24
    Branch32 Equal, %r1, $56, @27
  Successors: #1, #2
BB#1: ; frequency = 1.000000
  Predecessors: #0
    Nop @28
    Patch &Patchpoint0, %r0, @28
    Jump @29
  Successors: #3
BB#2: ; frequency = 1.000000
  Predecessors: #0
    Nop @30
    Patch &Patchpoint0, %r0, @30
    Jump @31
  Successors: #3
BB#3: ; frequency = 1.000000
  Predecessors: #2, #1
    Patch &Patchpoint0, %r21, @32
    Nop @33
    Patch &Patchpoint0, %r21, @33
    Add64 %r20, %tmp12, @36
    Load8<Traps> 1(%tmp12), %tmp13, @37
    Move 72(%tmp3), %tmp10, @38
    Load8 5(%tmp10), %tmp11, @39
    Branch32 Equal, %tmp11, $56, @42
  Successors: #4, #5
BB#4: ; frequency = 1.000000
  Predecessors: #3
    Move %tmp13, %r0, @43
    Nop @43
    Patch &Patchpoint0, %r0, @43
    Jump @44
  Successors: #6
BB#5: ; frequency = 1.000000
  Predecessors: #3
    Move %tmp13, %r0, @45
    Nop @45
    Patch &Patchpoint0, %r0, @45
    Jump @46
  Successors: #6
BB#6: ; frequency = 1.000000
  Predecessors: #5, #4
    Patch &Patchpoint0, %tmp3, @47
    Nop @48
    Patch &Patchpoint0, %tmp3, @48
    Add64 %r20, %tmp16, @51
    Load8<Traps> 2(%tmp16), %tmp17, @52
    Move 72(%tmp3), %tmp14, @53
    Load8 5(%tmp14), %tmp15, @54
    Branch32 Equal, %tmp15, $56, @57
  Successors: #7, #8
BB#7: ; frequency = 1.000000
  Predecessors: #6
    Move %tmp17, %r0, @58
    Nop @58
    Patch &Patchpoint0, %r0, @58
    Jump @59
  Successors: #9
BB#8: ; frequency = 1.000000
  Predecessors: #6
    Move %tmp17, %r0, @60
    Nop @60
    Patch &Patchpoint0, %r0, @60
    Jump @61
  Successors: #9
BB#9: ; frequency = 1.000000
  Predecessors: #8, #7
    Patch &Patchpoint0, %tmp3, @62
    Nop @63
    Patch &Patchpoint0, %tmp3, @63
    Add64 %r20, %tmp20, @66
    Load8<Traps> 25(%tmp20), %tmp21, @67
    Move 72(%tmp3), %tmp18, @68
    Load8 5(%tmp18), %tmp19, @69
    Branch32 Equal, %tmp19, $56, @72
  Successors: #10, #11
BB#10: ; frequency = 1.000000
  Predecessors: #9
    Move %tmp21, %r0, @73
    Nop @73
    Patch &Patchpoint0, %r0, @73
    Jump @74
  Successors: #12
BB#11: ; frequency = 1.000000
  Predecessors: #9
    Move %tmp21, %r0, @75
    Nop @75
    Patch &Patchpoint0, %r0, @75
    Jump @76
  Successors: #12
BB#12: ; frequency = 1.000000
  Predecessors: #11, #10
    Patch &Patchpoint0, %tmp3, @77
    Nop @78
    Patch &Patchpoint0, %tmp3, @78
    Load16SignedExtendTo32<Traps> (%r20,%tmp4), %tmp25, @82
    ZeroExtend16To32 %tmp25, %tmp24, @84
    Move 72(%tmp3), %tmp22, @85
    Load8 5(%tmp22), %tmp23, @86
    Branch32 Equal, %tmp23, $56, @89
  Successors: #13, #14
BB#13: ; frequency = 1.000000
  Predecessors: #12
    Move %tmp24, %r0, @90
    Nop @90
    Patch &Patchpoint0, %r0, @90
    Jump @91
  Successors: #15
BB#14: ; frequency = 1.000000
  Predecessors: #12
    Move %tmp24, %r0, @92
    Nop @92
    Patch &Patchpoint0, %r0, @92
    Jump @93
  Successors: #15
BB#15: ; frequency = 1.000000
  Predecessors: #14, #13
    Patch &Patchpoint0, %tmp3, @94
    Nop @95
    Patch &Patchpoint0, %tmp3, @95
    Load16SignedExtendTo32<Traps> (%r20,%tmp4), %tmp31, @99
    ZeroExtend16To32 %tmp31, %tmp30, @101
    Move 72(%tmp3), %tmp28, @102
    Load8 5(%tmp28), %tmp29, @103
    Branch32 Equal, %tmp29, $56, @106
  Successors: #16, #17
BB#16: ; frequency = 1.000000
  Predecessors: #15
    Move %tmp30, %r0, @107
    Nop @107
    Patch &Patchpoint0, %r0, @107
    Jump @108
  Successors: #18
BB#17: ; frequency = 1.000000
  Predecessors: #15
    Move %tmp30, %r0, @109
    Nop @109
    Patch &Patchpoint0, %r0, @109
    Jump @110
  Successors: #18
BB#18: ; frequency = 1.000000
  Predecessors: #17, #16
    Patch &Patchpoint0, %tmp3, @111
    Nop @112
    Patch &Patchpoint0, %tmp3, @112
    Add64 %r20, %tmp37, @115
    Load16SignedExtendTo32<Traps> 1(%tmp37), %tmp36, @116
    ZeroExtend16To32 %tmp36, %tmp35, @118
    Move 72(%tmp3), %tmp33, @119
    Load8 5(%tmp33), %tmp34, @120
    Branch32 Equal, %tmp34, $56, @123
  Successors: #19, #20
BB#19: ; frequency = 1.000000
  Predecessors: #18
    Move %tmp35, %r0, @124
    Nop @124
    Patch &Patchpoint0, %r0, @124
    Jump @125
  Successors: #21
BB#20: ; frequency = 1.000000
  Predecessors: #18
    Move %tmp35, %r0, @126
    Nop @126
    Patch &Patchpoint0, %r0, @126
    Jump @127
  Successors: #21
BB#21: ; frequency = 1.000000
  Predecessors: #20, #19
    Patch &Patchpoint0, %tmp3, @128
    Nop @129
    Patch &Patchpoint0, %tmp3, @129
    Add64 %r20, %tmp42, @132
    Load16SignedExtendTo32<Traps> 2(%tmp42), %tmp41, @133
    ZeroExtend16To32 %tmp41, %tmp40, @135
    Move 72(%tmp3), %tmp38, @136
    Load8 5(%tmp38), %tmp39, @137
    Branch32 Equal, %tmp39, $56, @140
  Successors: #22, #23
BB#22: ; frequency = 1.000000
  Predecessors: #21
    Move %tmp40, %r0, @141
    Nop @141
    Patch &Patchpoint0, %r0, @141
    Jump @142
  Successors: #24
BB#23: ; frequency = 1.000000
  Predecessors: #21
    Move %tmp40, %r0, @143
    Nop @143
    Patch &Patchpoint0, %r0, @143
    Jump @144
  Successors: #24
BB#24: ; frequency = 1.000000
  Predecessors: #23, #22
    Patch &Patchpoint0, %tmp3, @145
    Nop @146
    Patch &Patchpoint0, %tmp3, @146
    Add64 %r20, %tmp47, @149
    Load16SignedExtendTo32<Traps> 25(%tmp47), %tmp46, @150
    ZeroExtend16To32 %tmp46, %tmp45, @152
    Move 72(%tmp3), %tmp43, @153
    Load8 5(%tmp43), %tmp44, @154
    Branch32 Equal, %tmp44, $56, @157
  Successors: #25, #26
BB#25: ; frequency = 1.000000
  Predecessors: #24
    Move %tmp45, %r0, @158
    Nop @158
    Patch &Patchpoint0, %r0, @158
    Jump @159
  Successors: #27
BB#26: ; frequency = 1.000000
  Predecessors: #24
    Move %tmp45, %r0, @160
    Nop @160
    Patch &Patchpoint0, %r0, @160
    Jump @161
  Successors: #27
BB#27: ; frequency = 1.000000
  Predecessors: #26, #25
    Patch &Patchpoint0, %tmp3, @162
    Nop @163
    Patch &Patchpoint0, %tmp3, @163
    Move32<Traps> (%r20,%tmp4), %tmp50, @167
    Move 72(%tmp3), %tmp48, @168
    Load8 5(%tmp48), %tmp49, @169
    Branch32 Equal, %tmp49, $56, @172
  Successors: #28, #29
BB#28: ; frequency = 1.000000
  Predecessors: #27
    Move %tmp50, %r0, @173
    Nop @173
    Patch &Patchpoint0, %r0, @173
    Jump @174
  Successors: #30
BB#29: ; frequency = 1.000000
  Predecessors: #27
    Move %tmp50, %r0, @175
    Nop @175
    Patch &Patchpoint0, %r0, @175
    Jump @176
  Successors: #30
BB#30: ; frequency = 1.000000
  Predecessors: #29, #28
    Patch &Patchpoint0, %tmp3, @177
    Nop @178
    Patch &Patchpoint0, %tmp3, @178
    Add64 %r20, %tmp54, @181
    Move32<Traps> 1(%tmp54), %tmp55, @182
    Move 72(%tmp3), %tmp52, @183
    Load8 5(%tmp52), %tmp53, @184
    Branch32 Equal, %tmp53, $56, @187
  Successors: #31, #32
BB#31: ; frequency = 1.000000
  Predecessors: #30
    Move %tmp55, %r0, @188
    Nop @188
    Patch &Patchpoint0, %r0, @188
    Jump @189
  Successors: #33
BB#32: ; frequency = 1.000000
  Predecessors: #30
    Move %tmp55, %r0, @190
    Nop @190
    Patch &Patchpoint0, %r0, @190
    Jump @191
  Successors: #33
BB#33: ; frequency = 1.000000
  Predecessors: #32, #31
    Patch &Patchpoint0, %tmp3, @192
    Nop @193
    Patch &Patchpoint0, %tmp3, @193
    Add64 %r20, %tmp58, @196
    Move32<Traps> 2(%tmp58), %tmp59, @197
    Move 72(%tmp3), %tmp56, @198
    Load8 5(%tmp56), %tmp57, @199
    Branch32 Equal, %tmp57, $56, @202
  Successors: #34, #35
BB#34: ; frequency = 1.000000
  Predecessors: #33
    Move %tmp59, %r0, @203
    Nop @203
    Patch &Patchpoint0, %r0, @203
    Jump @204
  Successors: #36
BB#35: ; frequency = 1.000000
  Predecessors: #33
    Move %tmp59, %r0, @205
    Nop @205
    Patch &Patchpoint0, %r0, @205
    Jump @206
  Successors: #36
BB#36: ; frequency = 1.000000
  Predecessors: #35, #34
    Patch &Patchpoint0, %tmp3, @207
    Nop @208
    Patch &Patchpoint0, %tmp3, @208
    Add64 %r20, %tmp62, @211
    Move32<Traps> 25(%tmp62), %tmp63, @212
    Move 72(%tmp3), %tmp60, @213
    Load8 5(%tmp60), %tmp61, @214
    Branch32 Equal, %tmp61, $56, @217
  Successors: #37, #38
BB#37: ; frequency = 1.000000
  Predecessors: #36
    Move %tmp63, %r0, @218
    Nop @218
    Patch &Patchpoint0, %r0, @218
    Nop @219
    Patch &Patchpoint0, %tmp3, @219
    Nop @215
    Patch &Patchpoint0, %tmp3, @215
    RetVoid @210
BB#38: ; frequency = 1.000000
  Predecessors: #36
    Move %tmp63, %r0, @220
    Nop @220
    Patch &Patchpoint0, %r0, @220
    Nop @221
    Patch &Patchpoint0, %tmp3, @221
    Nop @200
    Patch &Patchpoint0, %tmp3, @200
    RetVoid @195
Specials:
    &Patchpoint0: Lowered B3::PatchpointValue.
Call arg area size: 32
Comment 1 Saam Barati 2017-03-15 16:03:54 PDT
(In reply to comment #0)
> On ARM64:
> 
> jsc -m --useWebAssembly=1 ./spec-tests//address.wast.js
> 
> 
> Yields:
> 
> 
> FATAL: No color for %tmp12
> Code:
> BB#0: ; frequency = 1.000000
>     Patch &Patchpoint0, %r1, @4
>     Move %r1, 24(%fp), @8
>     Move $0, %r1, $0(@10)
>     Move %r1, 16(%fp), @12
>     Nop @13
>     Patch &Patchpoint0, %r21, @13
>     Move32 %r0, %r22, @20
>     Load8<Traps> (%r20,%r22), %r0, @22
>     Move 72(%r21), %r1, @23
>     Load8 5(%r1), %r1, @24
>     Branch32 Equal, %r1, $56, @27
>   Successors: #1, #2
> BB#1: ; frequency = 1.000000
>   Predecessors: #0
>     Nop @28
>     Patch &Patchpoint0, %r0, @28
>     Jump @29
>   Successors: #3
> BB#2: ; frequency = 1.000000
>   Predecessors: #0
>     Nop @30
>     Patch &Patchpoint0, %r0, @30
>     Jump @31
>   Successors: #3
> BB#3: ; frequency = 1.000000
>   Predecessors: #2, #1
>     Patch &Patchpoint0, %r21, @32
>     Nop @33
>     Patch &Patchpoint0, %r21, @33
>     Add64 %r20, %tmp12, @36
>     Load8<Traps> 1(%tmp12), %tmp13, @37
>     Move 72(%tmp3), %tmp10, @38
>     Load8 5(%tmp10), %tmp11, @39
>     Branch32 Equal, %tmp11, $56, @42
>   Successors: #4, #5
> BB#4: ; frequency = 1.000000
>   Predecessors: #3
>     Move %tmp13, %r0, @43
>     Nop @43
>     Patch &Patchpoint0, %r0, @43
>     Jump @44
>   Successors: #6
> BB#5: ; frequency = 1.000000
>   Predecessors: #3
>     Move %tmp13, %r0, @45
>     Nop @45
>     Patch &Patchpoint0, %r0, @45
>     Jump @46
>   Successors: #6
> BB#6: ; frequency = 1.000000
>   Predecessors: #5, #4
>     Patch &Patchpoint0, %tmp3, @47
>     Nop @48
>     Patch &Patchpoint0, %tmp3, @48
>     Add64 %r20, %tmp16, @51
>     Load8<Traps> 2(%tmp16), %tmp17, @52
>     Move 72(%tmp3), %tmp14, @53
>     Load8 5(%tmp14), %tmp15, @54
>     Branch32 Equal, %tmp15, $56, @57
>   Successors: #7, #8
> BB#7: ; frequency = 1.000000
>   Predecessors: #6
>     Move %tmp17, %r0, @58
>     Nop @58
>     Patch &Patchpoint0, %r0, @58
>     Jump @59
>   Successors: #9
> BB#8: ; frequency = 1.000000
>   Predecessors: #6
>     Move %tmp17, %r0, @60
>     Nop @60
>     Patch &Patchpoint0, %r0, @60
>     Jump @61
>   Successors: #9
> BB#9: ; frequency = 1.000000
>   Predecessors: #8, #7
>     Patch &Patchpoint0, %tmp3, @62
>     Nop @63
>     Patch &Patchpoint0, %tmp3, @63
>     Add64 %r20, %tmp20, @66
>     Load8<Traps> 25(%tmp20), %tmp21, @67
>     Move 72(%tmp3), %tmp18, @68
>     Load8 5(%tmp18), %tmp19, @69
>     Branch32 Equal, %tmp19, $56, @72
>   Successors: #10, #11
> BB#10: ; frequency = 1.000000
>   Predecessors: #9
>     Move %tmp21, %r0, @73
>     Nop @73
>     Patch &Patchpoint0, %r0, @73
>     Jump @74
>   Successors: #12
> BB#11: ; frequency = 1.000000
>   Predecessors: #9
>     Move %tmp21, %r0, @75
>     Nop @75
>     Patch &Patchpoint0, %r0, @75
>     Jump @76
>   Successors: #12
> BB#12: ; frequency = 1.000000
>   Predecessors: #11, #10
>     Patch &Patchpoint0, %tmp3, @77
>     Nop @78
>     Patch &Patchpoint0, %tmp3, @78
>     Load16SignedExtendTo32<Traps> (%r20,%tmp4), %tmp25, @82
>     ZeroExtend16To32 %tmp25, %tmp24, @84
>     Move 72(%tmp3), %tmp22, @85
>     Load8 5(%tmp22), %tmp23, @86
>     Branch32 Equal, %tmp23, $56, @89
>   Successors: #13, #14
> BB#13: ; frequency = 1.000000
>   Predecessors: #12
>     Move %tmp24, %r0, @90
>     Nop @90
>     Patch &Patchpoint0, %r0, @90
>     Jump @91
>   Successors: #15
> BB#14: ; frequency = 1.000000
>   Predecessors: #12
>     Move %tmp24, %r0, @92
>     Nop @92
>     Patch &Patchpoint0, %r0, @92
>     Jump @93
>   Successors: #15
> BB#15: ; frequency = 1.000000
>   Predecessors: #14, #13
>     Patch &Patchpoint0, %tmp3, @94
>     Nop @95
>     Patch &Patchpoint0, %tmp3, @95
>     Load16SignedExtendTo32<Traps> (%r20,%tmp4), %tmp31, @99
>     ZeroExtend16To32 %tmp31, %tmp30, @101
>     Move 72(%tmp3), %tmp28, @102
>     Load8 5(%tmp28), %tmp29, @103
>     Branch32 Equal, %tmp29, $56, @106
>   Successors: #16, #17
> BB#16: ; frequency = 1.000000
>   Predecessors: #15
>     Move %tmp30, %r0, @107
>     Nop @107
>     Patch &Patchpoint0, %r0, @107
>     Jump @108
>   Successors: #18
> BB#17: ; frequency = 1.000000
>   Predecessors: #15
>     Move %tmp30, %r0, @109
>     Nop @109
>     Patch &Patchpoint0, %r0, @109
>     Jump @110
>   Successors: #18
> BB#18: ; frequency = 1.000000
>   Predecessors: #17, #16
>     Patch &Patchpoint0, %tmp3, @111
>     Nop @112
>     Patch &Patchpoint0, %tmp3, @112
>     Add64 %r20, %tmp37, @115
>     Load16SignedExtendTo32<Traps> 1(%tmp37), %tmp36, @116
>     ZeroExtend16To32 %tmp36, %tmp35, @118
>     Move 72(%tmp3), %tmp33, @119
>     Load8 5(%tmp33), %tmp34, @120
>     Branch32 Equal, %tmp34, $56, @123
>   Successors: #19, #20
> BB#19: ; frequency = 1.000000
>   Predecessors: #18
>     Move %tmp35, %r0, @124
>     Nop @124
>     Patch &Patchpoint0, %r0, @124
>     Jump @125
>   Successors: #21
> BB#20: ; frequency = 1.000000
>   Predecessors: #18
>     Move %tmp35, %r0, @126
>     Nop @126
>     Patch &Patchpoint0, %r0, @126
>     Jump @127
>   Successors: #21
> BB#21: ; frequency = 1.000000
>   Predecessors: #20, #19
>     Patch &Patchpoint0, %tmp3, @128
>     Nop @129
>     Patch &Patchpoint0, %tmp3, @129
>     Add64 %r20, %tmp42, @132
>     Load16SignedExtendTo32<Traps> 2(%tmp42), %tmp41, @133
>     ZeroExtend16To32 %tmp41, %tmp40, @135
>     Move 72(%tmp3), %tmp38, @136
>     Load8 5(%tmp38), %tmp39, @137
>     Branch32 Equal, %tmp39, $56, @140
>   Successors: #22, #23
> BB#22: ; frequency = 1.000000
>   Predecessors: #21
>     Move %tmp40, %r0, @141
>     Nop @141
>     Patch &Patchpoint0, %r0, @141
>     Jump @142
>   Successors: #24
> BB#23: ; frequency = 1.000000
>   Predecessors: #21
>     Move %tmp40, %r0, @143
>     Nop @143
>     Patch &Patchpoint0, %r0, @143
>     Jump @144
>   Successors: #24
> BB#24: ; frequency = 1.000000
>   Predecessors: #23, #22
>     Patch &Patchpoint0, %tmp3, @145
>     Nop @146
>     Patch &Patchpoint0, %tmp3, @146
>     Add64 %r20, %tmp47, @149
>     Load16SignedExtendTo32<Traps> 25(%tmp47), %tmp46, @150
>     ZeroExtend16To32 %tmp46, %tmp45, @152
>     Move 72(%tmp3), %tmp43, @153
>     Load8 5(%tmp43), %tmp44, @154
>     Branch32 Equal, %tmp44, $56, @157
>   Successors: #25, #26
> BB#25: ; frequency = 1.000000
>   Predecessors: #24
>     Move %tmp45, %r0, @158
>     Nop @158
>     Patch &Patchpoint0, %r0, @158
>     Jump @159
>   Successors: #27
> BB#26: ; frequency = 1.000000
>   Predecessors: #24
>     Move %tmp45, %r0, @160
>     Nop @160
>     Patch &Patchpoint0, %r0, @160
>     Jump @161
>   Successors: #27
> BB#27: ; frequency = 1.000000
>   Predecessors: #26, #25
>     Patch &Patchpoint0, %tmp3, @162
>     Nop @163
>     Patch &Patchpoint0, %tmp3, @163
>     Move32<Traps> (%r20,%tmp4), %tmp50, @167
>     Move 72(%tmp3), %tmp48, @168
>     Load8 5(%tmp48), %tmp49, @169
>     Branch32 Equal, %tmp49, $56, @172
>   Successors: #28, #29
> BB#28: ; frequency = 1.000000
>   Predecessors: #27
>     Move %tmp50, %r0, @173
>     Nop @173
>     Patch &Patchpoint0, %r0, @173
>     Jump @174
>   Successors: #30
> BB#29: ; frequency = 1.000000
>   Predecessors: #27
>     Move %tmp50, %r0, @175
>     Nop @175
>     Patch &Patchpoint0, %r0, @175
>     Jump @176
>   Successors: #30
> BB#30: ; frequency = 1.000000
>   Predecessors: #29, #28
>     Patch &Patchpoint0, %tmp3, @177
>     Nop @178
>     Patch &Patchpoint0, %tmp3, @178
>     Add64 %r20, %tmp54, @181
>     Move32<Traps> 1(%tmp54), %tmp55, @182
>     Move 72(%tmp3), %tmp52, @183
>     Load8 5(%tmp52), %tmp53, @184
>     Branch32 Equal, %tmp53, $56, @187
>   Successors: #31, #32
> BB#31: ; frequency = 1.000000
>   Predecessors: #30
>     Move %tmp55, %r0, @188
>     Nop @188
>     Patch &Patchpoint0, %r0, @188
>     Jump @189
>   Successors: #33
> BB#32: ; frequency = 1.000000
>   Predecessors: #30
>     Move %tmp55, %r0, @190
>     Nop @190
>     Patch &Patchpoint0, %r0, @190
>     Jump @191
>   Successors: #33
> BB#33: ; frequency = 1.000000
>   Predecessors: #32, #31
>     Patch &Patchpoint0, %tmp3, @192
>     Nop @193
>     Patch &Patchpoint0, %tmp3, @193
>     Add64 %r20, %tmp58, @196
>     Move32<Traps> 2(%tmp58), %tmp59, @197
>     Move 72(%tmp3), %tmp56, @198
>     Load8 5(%tmp56), %tmp57, @199
>     Branch32 Equal, %tmp57, $56, @202
>   Successors: #34, #35
> BB#34: ; frequency = 1.000000
>   Predecessors: #33
>     Move %tmp59, %r0, @203
>     Nop @203
>     Patch &Patchpoint0, %r0, @203
>     Jump @204
>   Successors: #36
> BB#35: ; frequency = 1.000000
>   Predecessors: #33
>     Move %tmp59, %r0, @205
>     Nop @205
>     Patch &Patchpoint0, %r0, @205
>     Jump @206
>   Successors: #36
> BB#36: ; frequency = 1.000000
>   Predecessors: #35, #34
>     Patch &Patchpoint0, %tmp3, @207
>     Nop @208
>     Patch &Patchpoint0, %tmp3, @208
>     Add64 %r20, %tmp62, @211
>     Move32<Traps> 25(%tmp62), %tmp63, @212
>     Move 72(%tmp3), %tmp60, @213
>     Load8 5(%tmp60), %tmp61, @214
>     Branch32 Equal, %tmp61, $56, @217
>   Successors: #37, #38
> BB#37: ; frequency = 1.000000
>   Predecessors: #36
>     Move %tmp63, %r0, @218
>     Nop @218
>     Patch &Patchpoint0, %r0, @218
>     Nop @219
>     Patch &Patchpoint0, %tmp3, @219
>     Nop @215
>     Patch &Patchpoint0, %tmp3, @215
>     RetVoid @210
> BB#38: ; frequency = 1.000000
>   Predecessors: #36
>     Move %tmp63, %r0, @220
>     Nop @220
>     Patch &Patchpoint0, %r0, @220
>     Nop @221
>     Patch &Patchpoint0, %tmp3, @221
>     Nop @200
>     Patch &Patchpoint0, %tmp3, @200
>     RetVoid @195
> Specials:
>     &Patchpoint0: Lowered B3::PatchpointValue.
> Call arg area size: 32
Can you also dump B3 before lowering to Air and Air after lowering B3 to Air.
Comment 2 JF Bastien 2017-03-15 17:10:50 PDT
Created attachment 304583 [details]
dump

Run with --airForceIRCAllocator=1 --dumpB3GraphAtEachPhase=1 --dumpAirGraphAtEachPhase=1
Comment 3 Saam Barati 2017-04-10 18:50:33 PDT
Did you figure out what the bug is here?
Comment 4 JF Bastien 2017-04-10 23:24:45 PDT
(In reply to Saam Barati from comment #3)
> Did you figure out what the bug is here?

No, I haven't gotten back to it yet.
Comment 5 Radar WebKit Bug Importer 2017-04-21 15:07:19 PDT
<rdar://problem/31767068>
Comment 6 Saam Barati 2017-04-25 13:44:55 PDT
I can't reproduce this locally
Comment 7 Saam Barati 2017-04-25 14:12:05 PDT
(In reply to Saam Barati from comment #6)
> I can't reproduce this locally

I can't reproduce this on the older version of address.wast.js either.
I tried with -O1 and -O2.