llvm-6502/test/MC/MBlaze/mblaze_shift.s
Wesley Peck 41400da31e 1. Finishing MBlaze MC asm parser test cases
2. Parsing .word directive in MBlaze asm parser
3. Fixing hack where memory instructions reversed order of last two parameters
4. Fixing many improperly encoded instructions
5. Support parsing special instructions (MFS,MTS,etc.)
6. Removing unused functions from inst printer


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118941 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-12 23:30:17 +00:00

48 lines
1.4 KiB
ArmAsm

# RUN: llvm-mc -triple mblaze-unknown-unknown -show-encoding %s | FileCheck %s
# Test to make sure that all of the TYPE-A instructions supported by
# the Microblaze can be parsed by the assembly parser.
# TYPE A: OPCODE RD RA RB FLAGS
# BINARY: 000000 00000 00000 00000 00000000000
# CHECK: bsrl
# BINARY: 010001 00001 00010 00011 00000000000
# CHECK: encoding: [0x44,0x22,0x18,0x00]
bsrl r1, r2, r3
# CHECK: bsra
# BINARY: 010001 00001 00010 00011 01000000000
# CHECK: encoding: [0x44,0x22,0x1a,0x00]
bsra r1, r2, r3
# CHECK: bsll
# BINARY: 010001 00001 00010 00011 10000000000
# CHECK: encoding: [0x44,0x22,0x1c,0x00]
bsll r1, r2, r3
# CHECK: bsrli
# BINARY: 011001 00001 00010 0000000000000000
# CHECK: encoding: [0x64,0x22,0x00,0x00]
bsrli r1, r2, 0
# CHECK: bsrai
# BINARY: 011001 00001 00010 0000001000000000
# CHECK: encoding: [0x64,0x22,0x02,0x00]
bsrai r1, r2, 0
# CHECK: bslli
# BINARY: 011001 00001 00010 0000010000000000
# CHECK: encoding: [0x64,0x22,0x04,0x00]
bslli r1, r2, 0
# CHECK: sra
# BINARY: 100100 00001 00010 00000 00000000001
# CHECK: encoding: [0x90,0x22,0x00,0x01]
sra r1, r2
# CHECK: srl
# BINARY: 100100 00001 00010 00000 00001000001
# CHECK: encoding: [0x90,0x22,0x00,0x41]
srl r1, r2