asm1.s 883 B

123456789101112131415161718192021222324
  1. // Copyright 2013 The Go Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style
  3. // license that can be found in the LICENSE file.
  4. //go:build amd64
  5. // +build amd64
  6. TEXT ·arg1(SB),0,$0-2
  7. MOVW x+0(FP), AX // ERROR "\[amd64\] arg1: invalid MOVW of x\+0\(FP\); int8 is 1-byte value"
  8. TEXT ·cpx(SB),0,$0-24
  9. // These are ok
  10. MOVSS x_real+0(FP), X0
  11. MOVSS x_imag+4(FP), X0
  12. MOVSD y_real+8(FP), X0
  13. MOVSD y_imag+16(FP), X0
  14. // Loading both parts of a complex is ok: see issue 35264.
  15. MOVSD x+0(FP), X0
  16. MOVO y+8(FP), X0
  17. MOVOU y+8(FP), X0
  18. // These are not ok.
  19. MOVO x+0(FP), X0 // ERROR "\[amd64\] cpx: invalid MOVO of x\+0\(FP\); complex64 is 8-byte value containing x_real\+0\(FP\) and x_imag\+4\(FP\)"
  20. MOVSD y+8(FP), X0 // ERROR "\[amd64\] cpx: invalid MOVSD of y\+8\(FP\); complex128 is 16-byte value containing y_real\+8\(FP\) and y_imag\+16\(FP\)"