# RUN: llvm-mc -show-encoding -mcpu=mips32 -triple mips-unknown-unknown %s | FileCheck %s
#
# CHECK:  .text
# CHECK:  $BB0_2:
# CHECK:  .abicalls
$BB0_2:
  .ent directives_test
     .abicalls
    .frame    $sp,0,$ra
    .mask     0x00000000,0
    .fmask    0x00000000,0

# CHECK: .set noreorder
# CHECK:   b 1332               # encoding: [0x10,0x00,0x01,0x4d]
# CHECK-NOT: nop
# CHECK:   j 1328               # encoding: [0x08,0x00,0x01,0x4c]
# CHECK-NOT: nop
# CHECK:   jal 1328             # encoding: [0x0c,0x00,0x01,0x4c]
# CHECK-NOT: nop

    .set    noreorder
     b 1332
     j 1328
     jal 1328
    .set    nomacro
    .set    noat
$JTI0_0:
    .gpword    ($BB0_2)

    .word 0x77fffffc
# CHECK: $JTI0_0:
# CHECK: .gpword ($BB0_2)
# CHECK:     .4byte    2013265916
    .set  at=$12
    .set macro
# CHECK:   .set reorder
# CHECK:   b 1332               # encoding: [0x10,0x00,0x01,0x4d]
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
# CHECK:   j 1328               # encoding: [0x08,0x00,0x01,0x4c]
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
# CHECK:   jal 1328             # encoding: [0x0c,0x00,0x01,0x4c]
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
    .set reorder
$BB0_4:
    b 1332
    j 1328
    jal 1328
    .set  at=$a0
    .set STORE_MASK,$t7
    .set FPU_MASK,$f7
    .set  $tmp7, $BB0_4-$BB0_2
    .set f6,$f6
# CHECK:    abs.s   $f6, $f7           # encoding: [0x46,0x00,0x39,0x85]
# CHECK:    lui     $1, %hi($tmp7)     # encoding: [0x3c,0x01,A,A]
# CHECK:                               #   fixup A - offset: 0, value: ($tmp7)@ABS_HI, kind: fixup_Mips_HI16
    abs.s  f6,FPU_MASK
    lui $1, %hi($tmp7)

# CHECK:    .set mips32r2
# CHECK:    ldxc1   $f0, $zero($5)     # encoding: [0x4c,0xa0,0x00,0x01]
# CHECK:    luxc1   $f0, $6($5)        # encoding: [0x4c,0xa6,0x00,0x05]
# CHECK:    lwxc1   $f6, $2($5)        # encoding: [0x4c,0xa2,0x01,0x80]
     .set mips32r2
    ldxc1   $f0, $zero($5)
    luxc1   $f0, $6($5)
    lwxc1   $f6, $2($5)

# CHECK: .set mips64
# CHECK: dadd $3, $3, $3
    .set mips64
    dadd   $3, $3, $3                  # encoding: [0x00,0x62,0x18,0x2c]

# CHECK: .set mips64r2
# CHECK: drotr $9, $6, 30              # encoding: [0x00,0x26,0x4f,0xba]
    .set mips64r2
    drotr   $9, $6, 30

# CHECK:   .set dsp
# CHECK:   lbux    $7, $10($11)         # encoding: [0x7d,0x6a,0x39,0x8a]
# CHECK:   lhx     $5, $6($7)           # encoding: [0x7c,0xe6,0x29,0x0a]
   .set dsp
   lbux    $7, $10($11)
   lhx     $5, $6($7)
