xine-lib 1.2.11
Macros | Functions
vis.h File Reference

Go to the source code of this file.

Macros

#define vis_opc_base   ((0x1 << 31) | (0x36 << 19))
 
#define vis_opf(X)   ((X) << 5)
 
#define vis_sreg(X)   (X)
 
#define vis_dreg(X)   (((X)&0x1f)|((X)>>5))
 
#define vis_rs1_s(X)   (vis_sreg(X) << 14)
 
#define vis_rs1_d(X)   (vis_dreg(X) << 14)
 
#define vis_rs2_s(X)   (vis_sreg(X) << 0)
 
#define vis_rs2_d(X)   (vis_dreg(X) << 0)
 
#define vis_rd_s(X)   (vis_sreg(X) << 25)
 
#define vis_rd_d(X)   (vis_dreg(X) << 25)
 
#define vis_ss2s(opf, rs1, rs2, rd)
 
#define vis_dd2d(opf, rs1, rs2, rd)
 
#define vis_ss2d(opf, rs1, rs2, rd)
 
#define vis_sd2d(opf, rs1, rs2, rd)
 
#define vis_d2s(opf, rs2, rd)
 
#define vis_s2d(opf, rs2, rd)
 
#define vis_d12d(opf, rs1, rd)
 
#define vis_d22d(opf, rs2, rd)
 
#define vis_s12s(opf, rs1, rd)
 
#define vis_s22s(opf, rs2, rd)
 
#define vis_s(opf, rd)
 
#define vis_d(opf, rd)
 
#define vis_r2m(op, rd, mem)    __asm__ __volatile__ (#op "\t%%f" #rd ", [%0]" : : "r" (&(mem)) )
 
#define vis_r2m_2(op, rd, mem1, mem2)    __asm__ __volatile__ (#op "\t%%f" #rd ", [%0 + %1]" : : "r" (mem1), "r" (mem2) )
 
#define vis_m2r(op, mem, rd)    __asm__ __volatile__ (#op "\t[%0], %%f" #rd : : "r" (&(mem)) )
 
#define vis_m2r_2(op, mem1, mem2, rd)    __asm__ __volatile__ (#op "\t[%0 + %1], %%f" #rd : : "r" (mem1), "r" (mem2) )
 
#define VIS_GSR_ALIGNADDR_MASK   0x0000007
 
#define VIS_GSR_ALIGNADDR_SHIFT   0
 
#define VIS_GSR_SCALEFACT_MASK   0x0000078
 
#define VIS_GSR_SCALEFACT_SHIFT   3
 
#define vis_ld32(mem, rs1)   vis_m2r(ld, mem, rs1)
 
#define vis_ld32_2(mem1, mem2, rs1)   vis_m2r_2(ld, mem1, mem2, rs1)
 
#define vis_st32(rs1, mem)   vis_r2m(st, rs1, mem)
 
#define vis_st32_2(rs1, mem1, mem2)   vis_r2m_2(st, rs1, mem1, mem2)
 
#define vis_ld64(mem, rs1)   vis_m2r(ldd, mem, rs1)
 
#define vis_ld64_2(mem1, mem2, rs1)   vis_m2r_2(ldd, mem1, mem2, rs1)
 
#define vis_st64(rs1, mem)   vis_r2m(std, rs1, mem)
 
#define vis_st64_2(rs1, mem1, mem2)   vis_r2m_2(std, rs1, mem1, mem2)
 
#define vis_ldblk(mem, rd)
 
#define vis_stblk(rd, mem)
 
#define vis_membar_storestore()    __asm__ __volatile__(".word 0x8143e008" : : : "memory")
 
#define vis_membar_sync()    __asm__ __volatile__(".word 0x8143e040" : : : "memory")
 
#define vis_padd16(rs1, rs2, rd)   vis_dd2d(0x50, rs1, rs2, rd)
 
#define vis_padd16s(rs1, rs2, rd)   vis_ss2s(0x51, rs1, rs2, rd)
 
#define vis_padd32(rs1, rs2, rd)   vis_dd2d(0x52, rs1, rs2, rd)
 
#define vis_padd32s(rs1, rs2, rd)   vis_ss2s(0x53, rs1, rs2, rd)
 
#define vis_psub16(rs1, rs2, rd)   vis_dd2d(0x54, rs1, rs2, rd)
 
#define vis_psub16s(rs1, rs2, rd)   vis_ss2s(0x55, rs1, rs2, rd)
 
#define vis_psub32(rs1, rs2, rd)   vis_dd2d(0x56, rs1, rs2, rd)
 
#define vis_psub32s(rs1, rs2, rd)   vis_ss2s(0x57, rs1, rs2, rd)
 
#define vis_pack16(rs2, rd)   vis_d2s( 0x3b, rs2, rd)
 
#define vis_pack32(rs1, rs2, rd)   vis_dd2d(0x3a, rs1, rs2, rd)
 
#define vis_packfix(rs2, rd)   vis_d2s( 0x3d, rs2, rd)
 
#define vis_expand(rs2, rd)   vis_s2d( 0x4d, rs2, rd)
 
#define vis_pmerge(rs1, rs2, rd)   vis_ss2d(0x4b, rs1, rs2, rd)
 
#define vis_mul8x16(rs1, rs2, rd)   vis_sd2d(0x31, rs1, rs2, rd)
 
#define vis_mul8x16au(rs1, rs2, rd)   vis_ss2d(0x33, rs1, rs2, rd)
 
#define vis_mul8x16al(rs1, rs2, rd)   vis_ss2d(0x35, rs1, rs2, rd)
 
#define vis_mul8sux16(rs1, rs2, rd)   vis_dd2d(0x36, rs1, rs2, rd)
 
#define vis_mul8ulx16(rs1, rs2, rd)   vis_dd2d(0x37, rs1, rs2, rd)
 
#define vis_muld8sux16(rs1, rs2, rd)   vis_ss2d(0x38, rs1, rs2, rd)
 
#define vis_muld8ulx16(rs1, rs2, rd)   vis_ss2d(0x39, rs1, rs2, rd)
 
#define vis_faligndata(rs1, rs2, rd)   vis_dd2d(0x48, rs1, rs2, rd)
 
#define vis_fzero(rd)   vis_d( 0x60, rd)
 
#define vis_fzeros(rd)   vis_s( 0x61, rd)
 
#define vis_fone(rd)   vis_d( 0x7e, rd)
 
#define vis_fones(rd)   vis_s( 0x7f, rd)
 
#define vis_src1(rs1, rd)   vis_d12d(0x74, rs1, rd)
 
#define vis_src1s(rs1, rd)   vis_s12s(0x75, rs1, rd)
 
#define vis_src2(rs2, rd)   vis_d22d(0x78, rs2, rd)
 
#define vis_src2s(rs2, rd)   vis_s22s(0x79, rs2, rd)
 
#define vis_not1(rs1, rd)   vis_d12d(0x6a, rs1, rd)
 
#define vis_not1s(rs1, rd)   vis_s12s(0x6b, rs1, rd)
 
#define vis_not2(rs2, rd)   vis_d22d(0x66, rs2, rd)
 
#define vis_not2s(rs2, rd)   vis_s22s(0x67, rs2, rd)
 
#define vis_or(rs1, rs2, rd)   vis_dd2d(0x7c, rs1, rs2, rd)
 
#define vis_ors(rs1, rs2, rd)   vis_ss2s(0x7d, rs1, rs2, rd)
 
#define vis_nor(rs1, rs2, rd)   vis_dd2d(0x62, rs1, rs2, rd)
 
#define vis_nors(rs1, rs2, rd)   vis_ss2s(0x63, rs1, rs2, rd)
 
#define vis_and(rs1, rs2, rd)   vis_dd2d(0x70, rs1, rs2, rd)
 
#define vis_ands(rs1, rs2, rd)   vis_ss2s(0x71, rs1, rs2, rd)
 
#define vis_nand(rs1, rs2, rd)   vis_dd2d(0x6e, rs1, rs2, rd)
 
#define vis_nands(rs1, rs2, rd)   vis_ss2s(0x6f, rs1, rs2, rd)
 
#define vis_xor(rs1, rs2, rd)   vis_dd2d(0x6c, rs1, rs2, rd)
 
#define vis_xors(rs1, rs2, rd)   vis_ss2s(0x6d, rs1, rs2, rd)
 
#define vis_xnor(rs1, rs2, rd)   vis_dd2d(0x72, rs1, rs2, rd)
 
#define vis_xnors(rs1, rs2, rd)   vis_ss2s(0x73, rs1, rs2, rd)
 
#define vis_ornot1(rs1, rs2, rd)   vis_dd2d(0x7a, rs1, rs2, rd)
 
#define vis_ornot1s(rs1, rs2, rd)   vis_ss2s(0x7b, rs1, rs2, rd)
 
#define vis_ornot2(rs1, rs2, rd)   vis_dd2d(0x76, rs1, rs2, rd)
 
#define vis_ornot2s(rs1, rs2, rd)   vis_ss2s(0x77, rs1, rs2, rd)
 
#define vis_andnot1(rs1, rs2, rd)   vis_dd2d(0x68, rs1, rs2, rd)
 
#define vis_andnot1s(rs1, rs2, rd)   vis_ss2s(0x69, rs1, rs2, rd)
 
#define vis_andnot2(rs1, rs2, rd)   vis_dd2d(0x64, rs1, rs2, rd)
 
#define vis_andnot2s(rs1, rs2, rd)   vis_ss2s(0x65, rs1, rs2, rd)
 
#define vis_pdist(rs1, rs2, rd)   vis_dd2d(0x3e, rs1, rs2, rd)
 

Functions

static void vis_set_gsr (unsigned int _val)
 
static void * vis_alignaddr (void *_ptr)
 
static void vis_alignaddr_g0 (void *_ptr)
 
static void * vis_alignaddrl (void *_ptr)
 
static void vis_alignaddrl_g0 (void *_ptr)
 

Macro Definition Documentation

◆ vis_and

#define vis_and (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x70, rs1, rs2, rd)

◆ vis_andnot1

#define vis_andnot1 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x68, rs1, rs2, rd)

◆ vis_andnot1s

#define vis_andnot1s (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x69, rs1, rs2, rd)

◆ vis_andnot2

#define vis_andnot2 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x64, rs1, rs2, rd)

◆ vis_andnot2s

#define vis_andnot2s (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x65, rs1, rs2, rd)

◆ vis_ands

#define vis_ands (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x71, rs1, rs2, rd)

◆ vis_d

#define vis_d (   opf,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rd_d(rd)))
#define vis_opf(X)
Definition: vis.h:45
#define vis_rd_d(X)
Definition: vis.h:53
#define vis_opc_base
Definition: vis.h:44

◆ vis_d12d

#define vis_d12d (   opf,
  rs1,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs1_d(rs1) | \
vis_rd_d(rd)))
#define vis_rs1_d(X)
Definition: vis.h:49

◆ vis_d22d

#define vis_d22d (   opf,
  rs2,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs2_d(rs2) | \
vis_rd_d(rd)))
#define vis_rs2_d(X)
Definition: vis.h:51

◆ vis_d2s

#define vis_d2s (   opf,
  rs2,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs2_d(rs2) | \
vis_rd_s(rd)))
#define vis_rd_s(X)
Definition: vis.h:52

◆ vis_dd2d

#define vis_dd2d (   opf,
  rs1,
  rs2,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs1_d(rs1) | \
vis_rs2_d(rs2) | \
vis_rd_d(rd)))

◆ vis_dreg

#define vis_dreg (   X)    (((X)&0x1f)|((X)>>5))

◆ vis_expand

#define vis_expand (   rs2,
  rd 
)    vis_s2d( 0x4d, rs2, rd)

◆ vis_faligndata

#define vis_faligndata (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x48, rs1, rs2, rd)

◆ vis_fone

#define vis_fone (   rd)    vis_d( 0x7e, rd)

◆ vis_fones

#define vis_fones (   rd)    vis_s( 0x7f, rd)

◆ vis_fzero

#define vis_fzero (   rd)    vis_d( 0x60, rd)

◆ vis_fzeros

#define vis_fzeros (   rd)    vis_s( 0x61, rd)

◆ VIS_GSR_ALIGNADDR_MASK

#define VIS_GSR_ALIGNADDR_MASK   0x0000007

◆ VIS_GSR_ALIGNADDR_SHIFT

#define VIS_GSR_ALIGNADDR_SHIFT   0

◆ VIS_GSR_SCALEFACT_MASK

#define VIS_GSR_SCALEFACT_MASK   0x0000078

◆ VIS_GSR_SCALEFACT_SHIFT

#define VIS_GSR_SCALEFACT_SHIFT   3

◆ vis_ld32

#define vis_ld32 (   mem,
  rs1 
)    vis_m2r(ld, mem, rs1)

◆ vis_ld32_2

#define vis_ld32_2 (   mem1,
  mem2,
  rs1 
)    vis_m2r_2(ld, mem1, mem2, rs1)

◆ vis_ld64

#define vis_ld64 (   mem,
  rs1 
)    vis_m2r(ldd, mem, rs1)

◆ vis_ld64_2

#define vis_ld64_2 (   mem1,
  mem2,
  rs1 
)    vis_m2r_2(ldd, mem1, mem2, rs1)

◆ vis_ldblk

#define vis_ldblk (   mem,
  rd 
)
Value:
do { register void *__mem asm("g1"); \
__mem = &(mem); \
__asm__ __volatile__(".word 0xc1985e00 | %1" \
: \
: "r" (__mem), \
"i" (vis_rd_d(rd)) \
: "memory"); \
} while (0)

◆ vis_m2r

#define vis_m2r (   op,
  mem,
  rd 
)     __asm__ __volatile__ (#op "\t[%0], %%f" #rd : : "r" (&(mem)) )

◆ vis_m2r_2

#define vis_m2r_2 (   op,
  mem1,
  mem2,
  rd 
)     __asm__ __volatile__ (#op "\t[%0 + %1], %%f" #rd : : "r" (mem1), "r" (mem2) )

◆ vis_membar_storestore

#define vis_membar_storestore ( )     __asm__ __volatile__(".word 0x8143e008" : : : "memory")

◆ vis_membar_sync

#define vis_membar_sync ( )     __asm__ __volatile__(".word 0x8143e040" : : : "memory")

◆ vis_mul8sux16

#define vis_mul8sux16 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x36, rs1, rs2, rd)

◆ vis_mul8ulx16

#define vis_mul8ulx16 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x37, rs1, rs2, rd)

◆ vis_mul8x16

#define vis_mul8x16 (   rs1,
  rs2,
  rd 
)    vis_sd2d(0x31, rs1, rs2, rd)

◆ vis_mul8x16al

#define vis_mul8x16al (   rs1,
  rs2,
  rd 
)    vis_ss2d(0x35, rs1, rs2, rd)

◆ vis_mul8x16au

#define vis_mul8x16au (   rs1,
  rs2,
  rd 
)    vis_ss2d(0x33, rs1, rs2, rd)

◆ vis_muld8sux16

#define vis_muld8sux16 (   rs1,
  rs2,
  rd 
)    vis_ss2d(0x38, rs1, rs2, rd)

◆ vis_muld8ulx16

#define vis_muld8ulx16 (   rs1,
  rs2,
  rd 
)    vis_ss2d(0x39, rs1, rs2, rd)

◆ vis_nand

#define vis_nand (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x6e, rs1, rs2, rd)

◆ vis_nands

#define vis_nands (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x6f, rs1, rs2, rd)

◆ vis_nor

#define vis_nor (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x62, rs1, rs2, rd)

◆ vis_nors

#define vis_nors (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x63, rs1, rs2, rd)

◆ vis_not1

#define vis_not1 (   rs1,
  rd 
)    vis_d12d(0x6a, rs1, rd)

◆ vis_not1s

#define vis_not1s (   rs1,
  rd 
)    vis_s12s(0x6b, rs1, rd)

◆ vis_not2

#define vis_not2 (   rs2,
  rd 
)    vis_d22d(0x66, rs2, rd)

◆ vis_not2s

#define vis_not2s (   rs2,
  rd 
)    vis_s22s(0x67, rs2, rd)

◆ vis_opc_base

#define vis_opc_base   ((0x1 << 31) | (0x36 << 19))

◆ vis_opf

#define vis_opf (   X)    ((X) << 5)

◆ vis_or

#define vis_or (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x7c, rs1, rs2, rd)

◆ vis_ornot1

#define vis_ornot1 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x7a, rs1, rs2, rd)

◆ vis_ornot1s

#define vis_ornot1s (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x7b, rs1, rs2, rd)

◆ vis_ornot2

#define vis_ornot2 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x76, rs1, rs2, rd)

◆ vis_ornot2s

#define vis_ornot2s (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x77, rs1, rs2, rd)

◆ vis_ors

#define vis_ors (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x7d, rs1, rs2, rd)

◆ vis_pack16

#define vis_pack16 (   rs2,
  rd 
)    vis_d2s( 0x3b, rs2, rd)

◆ vis_pack32

#define vis_pack32 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x3a, rs1, rs2, rd)

◆ vis_packfix

#define vis_packfix (   rs2,
  rd 
)    vis_d2s( 0x3d, rs2, rd)

◆ vis_padd16

#define vis_padd16 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x50, rs1, rs2, rd)

◆ vis_padd16s

#define vis_padd16s (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x51, rs1, rs2, rd)

◆ vis_padd32

#define vis_padd32 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x52, rs1, rs2, rd)

◆ vis_padd32s

#define vis_padd32s (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x53, rs1, rs2, rd)

◆ vis_pdist

#define vis_pdist (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x3e, rs1, rs2, rd)

◆ vis_pmerge

#define vis_pmerge (   rs1,
  rs2,
  rd 
)    vis_ss2d(0x4b, rs1, rs2, rd)

◆ vis_psub16

#define vis_psub16 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x54, rs1, rs2, rd)

◆ vis_psub16s

#define vis_psub16s (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x55, rs1, rs2, rd)

◆ vis_psub32

#define vis_psub32 (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x56, rs1, rs2, rd)

◆ vis_psub32s

#define vis_psub32s (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x57, rs1, rs2, rd)

◆ vis_r2m

#define vis_r2m (   op,
  rd,
  mem 
)     __asm__ __volatile__ (#op "\t%%f" #rd ", [%0]" : : "r" (&(mem)) )

◆ vis_r2m_2

#define vis_r2m_2 (   op,
  rd,
  mem1,
  mem2 
)     __asm__ __volatile__ (#op "\t%%f" #rd ", [%0 + %1]" : : "r" (mem1), "r" (mem2) )

◆ vis_rd_d

#define vis_rd_d (   X)    (vis_dreg(X) << 25)

◆ vis_rd_s

#define vis_rd_s (   X)    (vis_sreg(X) << 25)

◆ vis_rs1_d

#define vis_rs1_d (   X)    (vis_dreg(X) << 14)

◆ vis_rs1_s

#define vis_rs1_s (   X)    (vis_sreg(X) << 14)

◆ vis_rs2_d

#define vis_rs2_d (   X)    (vis_dreg(X) << 0)

◆ vis_rs2_s

#define vis_rs2_s (   X)    (vis_sreg(X) << 0)

◆ vis_s

#define vis_s (   opf,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rd_s(rd)))

◆ vis_s12s

#define vis_s12s (   opf,
  rs1,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs1_s(rs1) | \
vis_rd_s(rd)))
#define vis_rs1_s(X)
Definition: vis.h:48

◆ vis_s22s

#define vis_s22s (   opf,
  rs2,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs2_s(rs2) | \
vis_rd_s(rd)))
#define vis_rs2_s(X)
Definition: vis.h:50

◆ vis_s2d

#define vis_s2d (   opf,
  rs2,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs2_s(rs2) | \
vis_rd_d(rd)))

◆ vis_sd2d

#define vis_sd2d (   opf,
  rs1,
  rs2,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs1_s(rs1) | \
vis_rs2_d(rs2) | \
vis_rd_d(rd)))

◆ vis_src1

#define vis_src1 (   rs1,
  rd 
)    vis_d12d(0x74, rs1, rd)

◆ vis_src1s

#define vis_src1s (   rs1,
  rd 
)    vis_s12s(0x75, rs1, rd)

◆ vis_src2

#define vis_src2 (   rs2,
  rd 
)    vis_d22d(0x78, rs2, rd)

◆ vis_src2s

#define vis_src2s (   rs2,
  rd 
)    vis_s22s(0x79, rs2, rd)

◆ vis_sreg

#define vis_sreg (   X)    (X)

◆ vis_ss2d

#define vis_ss2d (   opf,
  rs1,
  rs2,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs1_s(rs1) | \
vis_rs2_s(rs2) | \
vis_rd_d(rd)))

◆ vis_ss2s

#define vis_ss2s (   opf,
  rs1,
  rs2,
  rd 
)
Value:
__asm__ __volatile__ (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rs1_s(rs1) | \
vis_rs2_s(rs2) | \
vis_rd_s(rd)))

◆ vis_st32

#define vis_st32 (   rs1,
  mem 
)    vis_r2m(st, rs1, mem)

◆ vis_st32_2

#define vis_st32_2 (   rs1,
  mem1,
  mem2 
)    vis_r2m_2(st, rs1, mem1, mem2)

◆ vis_st64

#define vis_st64 (   rs1,
  mem 
)    vis_r2m(std, rs1, mem)

◆ vis_st64_2

#define vis_st64_2 (   rs1,
  mem1,
  mem2 
)    vis_r2m_2(std, rs1, mem1, mem2)

◆ vis_stblk

#define vis_stblk (   rd,
  mem 
)
Value:
do { register void *__mem asm("g1"); \
__mem = &(mem); \
__asm__ __volatile__(".word 0xc1b85e00 | %1" \
: \
: "r" (__mem), \
"i" (vis_rd_d(rd)) \
: "memory"); \
} while (0)

◆ vis_xnor

#define vis_xnor (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x72, rs1, rs2, rd)

◆ vis_xnors

#define vis_xnors (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x73, rs1, rs2, rd)

◆ vis_xor

#define vis_xor (   rs1,
  rs2,
  rd 
)    vis_dd2d(0x6c, rs1, rs2, rd)

◆ vis_xors

#define vis_xors (   rs1,
  rs2,
  rd 
)    vis_ss2s(0x6d, rs1, rs2, rd)

Function Documentation

◆ vis_alignaddr()

static void * vis_alignaddr ( void *  _ptr)
inlinestatic

◆ vis_alignaddr_g0()

static void vis_alignaddr_g0 ( void *  _ptr)
inlinestatic

◆ vis_alignaddrl()

static void * vis_alignaddrl ( void *  _ptr)
inlinestatic

◆ vis_alignaddrl_g0()

static void vis_alignaddrl_g0 ( void *  _ptr)
inlinestatic

◆ vis_set_gsr()

static void vis_set_gsr ( unsigned int  _val)
inlinestatic