# RUN: llvm-mc --disassemble %s -triple=mblaze-unknown-unknown | FileCheck %s

################################################################################
# FSL instructions
################################################################################

# CHECK:    get         r0, rfsl0
0x6c 0x00 0x00 0x00

# CHECK:    nget        r0, rfsl0
0x6c 0x00 0x40 0x00

# CHECK:    cget        r0, rfsl0
0x6c 0x00 0x20 0x00

# CHECK:    ncget       r0, rfsl0
0x6c 0x00 0x60 0x00

# CHECK:    tget        r0, rfsl0
0x6c 0x00 0x10 0x00

# CHECK:    tnget       r0, rfsl0
0x6c 0x00 0x50 0x00

# CHECK:    tcget       r0, rfsl0
0x6c 0x00 0x30 0x00

# CHECK:    tncget      r0, rfsl0
0x6c 0x00 0x70 0x00

# CHECK:    aget        r0, rfsl0
0x6c 0x00 0x08 0x00

# CHECK:    naget       r0, rfsl0
0x6c 0x00 0x48 0x00

# CHECK:    caget       r0, rfsl0
0x6c 0x00 0x28 0x00

# CHECK:    ncaget      r0, rfsl0
0x6c 0x00 0x68 0x00

# CHECK:    taget       r0, rfsl0
0x6c 0x00 0x18 0x00

# CHECK:    tnaget      r0, rfsl0
0x6c 0x00 0x58 0x00

# CHECK:    tcaget      r0, rfsl0
0x6c 0x00 0x38 0x00

# CHECK:    tncaget     r0, rfsl0
0x6c 0x00 0x78 0x00

# CHECK:    eget        r0, rfsl0
0x6c 0x00 0x04 0x00

# CHECK:    neget       r0, rfsl0
0x6c 0x00 0x44 0x00

# CHECK:    ecget       r0, rfsl0
0x6c 0x00 0x24 0x00

# CHECK:    necget      r0, rfsl0
0x6c 0x00 0x64 0x00

# CHECK:    teget       r0, rfsl0
0x6c 0x00 0x14 0x00

# CHECK:    tneget      r0, rfsl0
0x6c 0x00 0x54 0x00

# CHECK:    tecget      r0, rfsl0
0x6c 0x00 0x34 0x00

# CHECK:    tnecget     r0, rfsl0
0x6c 0x00 0x74 0x00

# CHECK:    eaget       r0, rfsl0
0x6c 0x00 0x0c 0x00

# CHECK:    neaget      r0, rfsl0
0x6c 0x00 0x4c 0x00

# CHECK:    ecaget      r0, rfsl0
0x6c 0x00 0x2c 0x00

# CHECK:    necaget     r0, rfsl0
0x6c 0x00 0x6c 0x00

# CHECK:    teaget      r0, rfsl0
0x6c 0x00 0x1c 0x00

# CHECK:    tneaget     r0, rfsl0
0x6c 0x00 0x5c 0x00

# CHECK:    tecaget     r0, rfsl0
0x6c 0x00 0x3c 0x00

# CHECK:    tnecaget    r0, rfsl0
0x6c 0x00 0x7c 0x00

# CHECK:    getd        r0, r1
0x4c 0x00 0x08 0x00

# CHECK:    ngetd       r0, r1
0x4c 0x00 0x0a 0x00

# CHECK:    cgetd       r0, r1
0x4c 0x00 0x09 0x00

# CHECK:    ncgetd      r0, r1
0x4c 0x00 0x0b 0x00

# CHECK:    tgetd       r0, r1
0x4c 0x00 0x08 0x80

# CHECK:    tngetd      r0, r1
0x4c 0x00 0x0a 0x80

# CHECK:    tcgetd      r0, r1
0x4c 0x00 0x09 0x80

# CHECK:    tncgetd     r0, r1
0x4c 0x00 0x0b 0x80

# CHECK:    agetd       r0, r1
0x4c 0x00 0x08 0x40

# CHECK:    nagetd      r0, r1
0x4c 0x00 0x0a 0x40

# CHECK:    cagetd     r0, r1
0x4c 0x00 0x09 0x40

# CHECK:    ncagetd     r0, r1
0x4c 0x00 0x0b 0x40

# CHECK:    tagetd      r0, r1
0x4c 0x00 0x08 0xc0

# CHECK:    tnagetd     r0, r1
0x4c 0x00 0x0a 0xc0

# CHECK:    tcagetd     r0, r1
0x4c 0x00 0x09 0xc0

# CHECK:    tncagetd    r0, r1
0x4c 0x00 0x0b 0xc0

# CHECK:    egetd       r0, r1
0x4c 0x00 0x08 0x20

# CHECK:    negetd      r0, r1
0x4c 0x00 0x0a 0x20

# CHECK:    ecgetd      r0, r1
0x4c 0x00 0x09 0x20

# CHECK:    necgetd     r0, r1
0x4c 0x00 0x0b 0x20

# CHECK:    tegetd      r0, r1
0x4c 0x00 0x08 0xa0

# CHECK:    tnegetd     r0, r1
0x4c 0x00 0x0a 0xa0

# CHECK:    tecgetd     r0, r1
0x4c 0x00 0x09 0xa0

# CHECK:    tnecgetd    r0, r1
0x4c 0x00 0x0b 0xa0

# CHECK:    eagetd      r0, r1
0x4c 0x00 0x08 0x60

# CHECK:    neagetd     r0, r1
0x4c 0x00 0x0a 0x60

# CHECK:    ecagetd     r0, r1
0x4c 0x00 0x09 0x60

# CHECK:    necagetd    r0, r1
0x4c 0x00 0x0b 0x60

# CHECK:    teagetd     r0, r1
0x4c 0x00 0x08 0xe0

# CHECK:    tneagetd    r0, r1
0x4c 0x00 0x0a 0xe0

# CHECK:    tecagetd    r0, r1
0x4c 0x00 0x09 0xe0

# CHECK:    tnecagetd   r0, r1
0x4c 0x00 0x0b 0xe0

# CHECK:    put         r0, rfsl0
0x6c 0x00 0x80 0x00

# CHECK:    aput        r0, rfsl0
0x6c 0x00 0x88 0x00

# CHECK:    cput        r0, rfsl0
0x6c 0x00 0xa0 0x00

# CHECK:    caput       r0, rfsl0
0x6c 0x00 0xa8 0x00

# CHECK:    nput        r0, rfsl0
0x6c 0x00 0xc0 0x00

# CHECK:    naput       r0, rfsl0
0x6c 0x00 0xc8 0x00

# CHECK:    ncput       r0, rfsl0
0x6c 0x00 0xe0 0x00

# CHECK:    ncaput      r0, rfsl0
0x6c 0x00 0xe8 0x00

# CHECK:    tput        rfsl0
0x6c 0x00 0x90 0x00

# CHECK:    taput       rfsl0
0x6c 0x00 0x98 0x00

# CHECK:    tcput       rfsl0
0x6c 0x00 0xb0 0x00

# CHECK:    tcaput      rfsl0
0x6c 0x00 0xb8 0x00

# CHECK:    tnput       rfsl0
0x6c 0x00 0xd0 0x00

# CHECK:    tnaput      rfsl0
0x6c 0x00 0xd8 0x00

# CHECK:    tncput      rfsl0
0x6c 0x00 0xf0 0x00

# CHECK:    tncaput     rfsl0
0x6c 0x00 0xf8 0x00

# CHECK:    putd        r0, r1
0x4c 0x00 0x0c 0x00

# CHECK:    aputd       r0, r1
0x4c 0x00 0x0c 0x40

# CHECK:    cputd       r0, r1
0x4c 0x00 0x0d 0x00

# CHECK:    caputd      r0, r1
0x4c 0x00 0x0d 0x40

# CHECK:    nputd       r0, r1
0x4c 0x00 0x0e 0x00

# CHECK:    naputd      r0, r1
0x4c 0x00 0x0e 0x40

# CHECK:    ncputd      r0, r1
0x4c 0x00 0x0f 0x00

# CHECK:    ncaputd     r0, r1
0x4c 0x00 0x0f 0x40

# CHECK:    tputd       r1
0x4c 0x00 0x0c 0x80

# CHECK:    taputd      r1
0x4c 0x00 0x0c 0xc0

# CHECK:    tcputd      r1
0x4c 0x00 0x0d 0x80

# CHECK:    tcaputd     r1
0x4c 0x00 0x0d 0xc0

# CHECK:    tnputd      r1
0x4c 0x00 0x0e 0x80

# CHECK:    tnaputd     r1
0x4c 0x00 0x0e 0xc0

# CHECK:    tncputd     r1
0x4c 0x00 0x0f 0x80

# CHECK:    tncaputd    r1
0x4c 0x00 0x0f 0xc0

# CHECK:    get     r0, rfsl1
0x6c 0x00 0x00 0x01

# CHECK:    get     r0, rfsl2
0x6c 0x00 0x00 0x02

# CHECK:    get     r0, rfsl3
0x6c 0x00 0x00 0x03

# CHECK:    get     r0, rfsl4
0x6c 0x00 0x00 0x04

# CHECK:    get     r0, rfsl5
0x6c 0x00 0x00 0x05

# CHECK:    get     r0, rfsl6
0x6c 0x00 0x00 0x06

# CHECK:    get     r0, rfsl7
0x6c 0x00 0x00 0x07

# CHECK:    get     r0, rfsl8
0x6c 0x00 0x00 0x08

# CHECK:    get     r0, rfsl9
0x6c 0x00 0x00 0x09

# CHECK:    get     r0, rfsl10
0x6c 0x00 0x00 0x0a

# CHECK:    get     r0, rfsl11
0x6c 0x00 0x00 0x0b

# CHECK:    get     r0, rfsl12
0x6c 0x00 0x00 0x0c

# CHECK:    get     r0, rfsl13
0x6c 0x00 0x00 0x0d

# CHECK:    get     r0, rfsl14
0x6c 0x00 0x00 0x0e

# CHECK:    get     r0, rfsl15
0x6c 0x00 0x00 0x0f
