mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-27 15:29:51 +00:00
The '.set mips64' directive enables the feature Mips:FeatureMips64 from assembly. Note that it doesn't modify the ELF header as opposed to the use of -mips64 from the command-line. The reason for this is that we want to be as compatible as possible with existing assemblers like GAS. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204817 91177308-0d34-0410-b5e6-96231b3b80d8
84 lines
2.5 KiB
ArmAsm
84 lines
2.5 KiB
ArmAsm
# 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'A',0x01'A',0x00,0x00]
|
|
# 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)
|