mips-hwr-register-names.s 8.23 KB
# Check the hardware registers
#
# FIXME: Use the code generator in order to print the .set directives
#        instead of the instruction printer.
#
# RUN: llvm-mc %s -triple=mips-unknown-linux -show-encoding -mcpu=mips32r2 | \
# RUN:      FileCheck %s
        .set noat
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $hwr_cpunum
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x00,0x3b]
        rdhwr     $a0,$hwr_cpunum
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $hwr_cpunum
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x00,0x3b]
        rdhwr     $a0,$0

        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $5, $hwr_synci_step
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x05,0x08,0x3b]
        rdhwr     $a1,$hwr_synci_step
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $5, $hwr_synci_step
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x05,0x08,0x3b]
        rdhwr     $a1,$1

        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $6, $hwr_cc
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x06,0x10,0x3b]
        rdhwr     $a2,$hwr_cc
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $6, $hwr_cc
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x06,0x10,0x3b]
        rdhwr     $a2,$2

        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $7, $hwr_ccres
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x07,0x18,0x3b]
        rdhwr     $a3,$hwr_ccres
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $7, $hwr_ccres
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x07,0x18,0x3b]
        rdhwr     $a3,$3

        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $4
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x20,0x3b]
        rdhwr     $a0,$4
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $5
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x28,0x3b]
        rdhwr     $a0,$5
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $6
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x30,0x3b]
        rdhwr     $a0,$6
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $7
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x38,0x3b]
        rdhwr     $a0,$7
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $8
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x40,0x3b]
        rdhwr     $a0,$8
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $9
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x48,0x3b]
        rdhwr     $a0,$9
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $10
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x50,0x3b]
        rdhwr     $a0,$10
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $11
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x58,0x3b]
        rdhwr     $a0,$11
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $12
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x60,0x3b]
        rdhwr     $a0,$12
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $13
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x68,0x3b]
        rdhwr     $a0,$13
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $14
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x70,0x3b]
        rdhwr     $a0,$14
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $15
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x78,0x3b]
        rdhwr     $a0,$15
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $16
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x80,0x3b]
        rdhwr     $a0,$16
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $17
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x88,0x3b]
        rdhwr     $a0,$17
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $18
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x90,0x3b]
        rdhwr     $a0,$18
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $19
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0x98,0x3b]
        rdhwr     $a0,$19
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $20
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xa0,0x3b]
        rdhwr     $a0,$20
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $21
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xa8,0x3b]
        rdhwr     $a0,$21
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $22
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xb0,0x3b]
        rdhwr     $a0,$22
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $23
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xb8,0x3b]
        rdhwr     $a0,$23
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $24
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xc0,0x3b]
        rdhwr     $a0,$24
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $25
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xc8,0x3b]
        rdhwr     $a0,$25
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $26
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xd0,0x3b]
        rdhwr     $a0,$26
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $27
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xd8,0x3b]
        rdhwr     $a0,$27
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $28
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xe0,0x3b]
        rdhwr     $a0,$28

        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $29
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xe8,0x3b]
        rdhwr     $a0,$29
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $29
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xe8,0x3b]
        rdhwr     $a0,$hwr_ulr

        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $30
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xf0,0x3b]
        rdhwr     $a0,$30
        # CHECK:      .set    push
        # CHECK-NEXT: .set    mips32r2
        # CHECK-NEXT: rdhwr   $4, $31
        # CHECK-NEXT: .set    pop             # encoding: [0x7c,0x04,0xf8,0x3b]
        rdhwr     $a0,$31