// RUN: not llvm-mc -triple x86_64-unknown-unknown --show-encoding %s 2> %t.err | FileCheck --check-prefix=64 %s // RUN: FileCheck --check-prefix=ERR64 < %t.err %s // RUN: not llvm-mc -triple i386-unknown-unknown --show-encoding %s 2> %t.err | FileCheck --check-prefix=32 %s // RUN: FileCheck --check-prefix=ERR32 < %t.err %s // RUN: not llvm-mc -triple i386-unknown-unknown-code16 --show-encoding %s 2> %t.err | FileCheck --check-prefix=16 %s // RUN: FileCheck --check-prefix=ERR16 < %t.err %s ret // 64: retq // 64: encoding: [0xc3] // 32: retl // 32: encoding: [0xc3] // 16: retw // 16: encoding: [0xc3] retw // 64: retw // 64: encoding: [0x66,0xc3] // 32: retw // 32: encoding: [0x66,0xc3] // 16: retw // 16: encoding: [0xc3] retl // ERR64: error: instruction requires: Not 64-bit mode // 32: retl // 32: encoding: [0xc3] // 16: retl // 16: encoding: [0x66,0xc3] retq // 64: retq // 64: encoding: [0xc3] // ERR32: error: instruction requires: 64-bit mode // ERR16: error: instruction requires: 64-bit mode ret $0 // 64: retq $0 // 64: encoding: [0xc2,0x00,0x00] // 32: retl $0 // 32: encoding: [0xc2,0x00,0x00] // 16: retw $0 // 16: encoding: [0xc2,0x00,0x00] retw $0 // 64: retw $0 // 64: encoding: [0x66,0xc2,0x00,0x00] // 32: retw $0 // 32: encoding: [0x66,0xc2,0x00,0x00] // 16: retw $0 // 16: encoding: [0xc2,0x00,0x00] retl $0 // ERR64: error: instruction requires: Not 64-bit mode // 32: retl $0 // 32: encoding: [0xc2,0x00,0x00] // 16: retl $0 // 16: encoding: [0x66,0xc2,0x00,0x00] retq $0 // 64: retq $0 // 64: encoding: [0xc2,0x00,0x00] // ERR32: error: instruction requires: 64-bit mode // ERR16: error: instruction requires: 64-bit mode retn // 64: retq // 64: encoding: [0xc3] // 32: retl // 32: encoding: [0xc3] // 16: retw // 16: encoding: [0xc3] retn $0 // 64: retq $0 // 64: encoding: [0xc2,0x00,0x00] // 32: retl $0 // 32: encoding: [0xc2,0x00,0x00] // 16: retw $0 // 16: encoding: [0xc2,0x00,0x00] lret // 64: lretl // 64: encoding: [0xcb] // 32: lretl // 32: encoding: [0xcb] // 16: lretw // 16: encoding: [0xcb] lretw // 64: lretw // 64: encoding: [0x66,0xcb] // 32: lretw // 32: encoding: [0x66,0xcb] // 16: lretw // 16: encoding: [0xcb] lretl // 64: lretl // 64: encoding: [0xcb] // 32: lretl // 32: encoding: [0xcb] // 16: lretl // 16: encoding: [0x66,0xcb] lretq // 64: lretq // 64: encoding: [0x48,0xcb] // ERR32: error: instruction requires: 64-bit mode // ERR16: error: instruction requires: 64-bit mode lret $0 // 64: lretl $0 // 64: encoding: [0xca,0x00,0x00] // 32: lretl $0 // 32: encoding: [0xca,0x00,0x00] // 16: lretw $0 // 16: encoding: [0xca,0x00,0x00] lretw $0 // 64: lretw $0 // 64: encoding: [0x66,0xca,0x00,0x00] // 32: lretw $0 // 32: encoding: [0x66,0xca,0x00,0x00] // 16: lretw $0 // 16: encoding: [0xca,0x00,0x00] lretl $0 // 64: lretl $0 // 64: encoding: [0xca,0x00,0x00] // 32: lretl $0 // 32: encoding: [0xca,0x00,0x00] // 16: lretl $0 // 16: encoding: [0x66,0xca,0x00,0x00] lretq $0 // 64: lretq $0 // 64: encoding: [0x48,0xca,0x00,0x00] // ERR32: error: instruction requires: 64-bit mode // ERR16: error: instruction requires: 64-bit mode