1 /*
   2  * This file and its contents are supplied under the terms of the
   3  * Common Development and Distribution License ("CDDL"), version 1.0.
   4  * You may only use this file in accordance with the terms of version
   5  * 1.0 of the CDDL.
   6  *
   7  * A full copy of the text of the CDDL should have accompanied this
   8  * source.  A copy of the CDDL is also available via the Internet at
   9  * http://www.illumos.org/license/CDDL.
  10  */
  11 
  12 /*
  13  * Copyright 2018, Joyent, Inc.
  14  */
  15 
  16 /*
  17  * Test our disassembly of various supported pseudo instructions. We only
  18  * support disassembling a subset of the common pseudo instructions that map
  19  * directly to a single asm instruction. Several of the pseudo-instructions
  20  * transform into more than one instruction so we don't support them.
  21  */
  22 
  23 .text
  24 .align 16
  25 .globl libdis_test
  26 .type libdis_test, @function
  27 libdis_test:
  28         nop
  29         ret
  30         fence
  31         rdinstret       t0
  32         rdcycle         t1
  33         rdtime          t2
  34         csrr            t1, ustatus
  35         csrw            ustatus, t1
  36         csrs            ustatus, t2
  37         csrc            ustatus, t3
  38         csrwi           uie, 0x4
  39         csrsi           uie, 0x5
  40         csrci           uie, 0x6
  41         frcsr           s0
  42         fscsr           s0, s1
  43         fscsr           s1
  44         frrm            a0
  45         fsrm            a0, a1
  46         fsrm            a1
  47         fsrmi           t0, 0x4
  48         fsrmi           0x5     
  49         frflags         a0
  50         fsflags         a0, a1
  51         fsflags         a1
  52         fsflagsi        t0, 0x4
  53         fsflagsi        0x5     
  54 .size libdis_test, [.-libdis_test]