// Copyright 2021 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. TEXT errors(SB),$0 MOV $errors(SB), (X5) // ERROR "address load must target register" MOV $8(SP), (X5) // ERROR "address load must target register" MOVB $8(SP), X5 // ERROR "unsupported address load" MOVH $8(SP), X5 // ERROR "unsupported address load" MOVW $8(SP), X5 // ERROR "unsupported address load" MOVF $8(SP), X5 // ERROR "unsupported address load" MOV $1234, 0(SP) // ERROR "constant load must target register" MOV $1234, 8(SP) // ERROR "constant load must target register" MOV $0, 0(SP) // ERROR "constant load must target register" MOV $0, 8(SP) // ERROR "constant load must target register" MOV $1234, 0(SP) // ERROR "constant load must target register" MOV $1234, 8(SP) // ERROR "constant load must target register" MOVB $1, X5 // ERROR "unsupported constant load" MOVH $1, X5 // ERROR "unsupported constant load" MOVW $1, X5 // ERROR "unsupported constant load" MOVF $1, X5 // ERROR "unsupported constant load" MOVBU X5, (X6) // ERROR "unsupported unsigned store" MOVHU X5, (X6) // ERROR "unsupported unsigned store" MOVWU X5, (X6) // ERROR "unsupported unsigned store" MOVF F0, F1, F2 // ERROR "illegal MOV instruction" MOVD F0, F1, F2 // ERROR "illegal MOV instruction" MOV X10, X11, X12 // ERROR "illegal MOV instruction" MOVW X10, X11, X12 // ERROR "illegal MOV instruction" SLLI $64, X5, X6 // ERROR "shift amount out of range 0 to 63" SRLI $64, X5, X6 // ERROR "shift amount out of range 0 to 63" SRAI $64, X5, X6 // ERROR "shift amount out of range 0 to 63" SLLI $-1, X5, X6 // ERROR "shift amount out of range 0 to 63" SRLI $-1, X5, X6 // ERROR "shift amount out of range 0 to 63" SRAI $-1, X5, X6 // ERROR "shift amount out of range 0 to 63" SLLIW $32, X5, X6 // ERROR "shift amount out of range 0 to 31" SRLIW $32, X5, X6 // ERROR "shift amount out of range 0 to 31" SRAIW $32, X5, X6 // ERROR "shift amount out of range 0 to 31" SLLIW $-1, X5, X6 // ERROR "shift amount out of range 0 to 31" SRLIW $-1, X5, X6 // ERROR "shift amount out of range 0 to 31" SRAIW $-1, X5, X6 // ERROR "shift amount out of range 0 to 31" SD X5, 4294967296(X6) // ERROR "constant 4294967296 too large" SRLI $1, X5, F1 // ERROR "expected integer register in rd position but got non-integer register F1" SRLI $1, F1, X5 // ERROR "expected integer register in rs1 position but got non-integer register F1" FNES F1, (X5) // ERROR "needs an integer register output" RET