llvm-project/llvm/test/MC/MBlaze/mblaze_fpu.s

78 lines
2.3 KiB
ArmAsm

# RUN: llvm-mc -triple mblaze-unknown-unknown -show-encoding %s | FileCheck %s
# Test to ensure that all FPU instructions can be parsed by the
# assembly parser correctly.
# TYPE A: OPCODE RD RA RB FLAGS
# BINARY: 011011 00000 00000 00000 00000000000
# CHECK: fadd
# BINARY: 010110 00000 00001 00010 00000000000
# CHECK: encoding: [0x58,0x01,0x10,0x00]
fadd r0, r1, r2
# CHECK: frsub
# BINARY: 010110 00000 00001 00010 00010000000
# CHECK: encoding: [0x58,0x01,0x10,0x80]
frsub r0, r1, r2
# CHECK: fmul
# BINARY: 010110 00000 00001 00010 00100000000
# CHECK: encoding: [0x58,0x01,0x11,0x00]
fmul r0, r1, r2
# CHECK: fdiv
# BINARY: 010110 00000 00001 00010 00110000000
# CHECK: encoding: [0x58,0x01,0x11,0x80]
fdiv r0, r1, r2
# CHECK: fsqrt
# BINARY: 010110 00000 00001 00000 01110000000
# CHECK: encoding: [0x58,0x01,0x03,0x80]
fsqrt r0, r1
# CHECK: fint
# BINARY: 010110 00000 00001 00000 01100000000
# CHECK: encoding: [0x58,0x01,0x03,0x00]
fint r0, r1
# CHECK: flt
# BINARY: 010110 00000 00001 00000 01010000000
# CHECK: encoding: [0x58,0x01,0x02,0x80]
flt r0, r1
# CHECK: fcmp.un
# BINARY: 010110 00000 00001 00010 01000000000
# CHECK: encoding: [0x58,0x01,0x12,0x00]
fcmp.un r0, r1, r2
# CHECK: fcmp.lt
# BINARY: 010110 00000 00001 00010 01000010000
# CHECK: encoding: [0x58,0x01,0x12,0x10]
fcmp.lt r0, r1, r2
# CHECK: fcmp.eq
# BINARY: 010110 00000 00001 00010 01000100000
# CHECK: encoding: [0x58,0x01,0x12,0x20]
fcmp.eq r0, r1, r2
# CHECK: fcmp.le
# BINARY: 010110 00000 00001 00010 01000110000
# CHECK: encoding: [0x58,0x01,0x12,0x30]
fcmp.le r0, r1, r2
# CHECK: fcmp.gt
# BINARY: 010110 00000 00001 00010 01001000000
# CHECK: encoding: [0x58,0x01,0x12,0x40]
fcmp.gt r0, r1, r2
# CHECK: fcmp.ne
# BINARY: 010110 00000 00001 00010 01001010000
# CHECK: encoding: [0x58,0x01,0x12,0x50]
fcmp.ne r0, r1, r2
# CHECK: fcmp.ge
# BINARY: 010110 00000 00001 00010 01001100000
# CHECK: encoding: [0x58,0x01,0x12,0x60]
fcmp.ge r0, r1, r2