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