vis.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ACCEL_SPARC_VIS   1
 
#define ACCEL_SPARC_VIS2   2
 
#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 int vis_level (void)
 
static void vis_set_gsr (unsigned int _val)
 
static const voidvis_alignaddr (const void *_ptr)
 
static void vis_alignaddr_g0 (void *_ptr)
 
static voidvis_alignaddrl (void *_ptr)
 
static void vis_alignaddrl_g0 (void *_ptr)
 

Macro Definition Documentation

#define ACCEL_SPARC_VIS   1

Definition at line 45 of file vis.h.

Referenced by ff_dsputil_init_vis(), ff_hpeldsp_init_vis(), and vis_level().

#define ACCEL_SPARC_VIS2   2

Definition at line 46 of file vis.h.

Referenced by vis_level().

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

Definition at line 333 of file vis.h.

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

Definition at line 334 of file vis.h.

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

Definition at line 335 of file vis.h.

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

Definition at line 336 of file vis.h.

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

Definition at line 322 of file vis.h.

#define vis_d (   opf,
  rd 
)
Value:
__asm__ volatile (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rd_d(rd)))
#define vis_opc_base
Definition: vis.h:56
#define vis_rd_d(X)
Definition: vis.h:65
#define vis_opf(X)
Definition: vis.h:57

Definition at line 136 of file vis.h.

#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_opc_base
Definition: vis.h:56
#define vis_rd_d(X)
Definition: vis.h:65
#define vis_opf(X)
Definition: vis.h:57
#define vis_rs1_d(X)
Definition: vis.h:61

Definition at line 107 of file vis.h.

#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_opc_base
Definition: vis.h:56
#define vis_rd_d(X)
Definition: vis.h:65
#define vis_rs2_d(X)
Definition: vis.h:63
#define vis_opf(X)
Definition: vis.h:57

Definition at line 113 of file vis.h.

#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_opc_base
Definition: vis.h:56
#define vis_rs2_d(X)
Definition: vis.h:63
#define vis_opf(X)
Definition: vis.h:57
#define vis_rd_s(X)
Definition: vis.h:64

Definition at line 95 of file vis.h.

#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)))
#define vis_opc_base
Definition: vis.h:56
#define vis_rd_d(X)
Definition: vis.h:65
#define vis_rs2_d(X)
Definition: vis.h:63
#define vis_opf(X)
Definition: vis.h:57
#define vis_rs1_d(X)
Definition: vis.h:61

Definition at line 74 of file vis.h.

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

Definition at line 59 of file vis.h.

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

Definition at line 222 of file vis.h.

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

Definition at line 307 of file vis.h.

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

Definition at line 308 of file vis.h.

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

Definition at line 306 of file vis.h.

#define VIS_GSR_ALIGNADDR_MASK   0x0000007

Definition at line 162 of file vis.h.

#define VIS_GSR_ALIGNADDR_SHIFT   0

Definition at line 163 of file vis.h.

#define VIS_GSR_SCALEFACT_MASK   0x0000078

Definition at line 164 of file vis.h.

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

Definition at line 167 of file vis.h.

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

Definition at line 168 of file vis.h.

#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)
#define vis_rd_d(X)
Definition: vis.h:65
int mem
Definition: avisynth_c.h:721

Definition at line 176 of file vis.h.

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

Definition at line 147 of file vis.h.

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

Definition at line 150 of file vis.h.

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

Definition at line 196 of file vis.h.

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

Definition at line 199 of file vis.h.

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

Definition at line 230 of file vis.h.

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

Definition at line 231 of file vis.h.

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

Definition at line 232 of file vis.h.

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

Definition at line 233 of file vis.h.

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

Definition at line 323 of file vis.h.

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

Definition at line 324 of file vis.h.

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

Definition at line 319 of file vis.h.

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

Definition at line 320 of file vis.h.

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

Definition at line 313 of file vis.h.

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

Definition at line 314 of file vis.h.

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

Definition at line 315 of file vis.h.

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

Definition at line 316 of file vis.h.

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

Definition at line 56 of file vis.h.

Referenced by vis_alignaddr(), vis_alignaddr_g0(), vis_alignaddrl(), and vis_alignaddrl_g0().

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

Definition at line 57 of file vis.h.

Referenced by vis_alignaddr(), vis_alignaddr_g0(), vis_alignaddrl(), and vis_alignaddrl_g0().

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

Definition at line 329 of file vis.h.

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

Definition at line 330 of file vis.h.

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

Definition at line 331 of file vis.h.

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

Definition at line 332 of file vis.h.

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

Definition at line 318 of file vis.h.

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

Definition at line 220 of file vis.h.

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

Definition at line 221 of file vis.h.

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

Definition at line 209 of file vis.h.

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

Definition at line 210 of file vis.h.

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

Definition at line 211 of file vis.h.

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

Definition at line 340 of file vis.h.

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

Definition at line 213 of file vis.h.

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

Definition at line 214 of file vis.h.

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

Definition at line 215 of file vis.h.

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

Definition at line 141 of file vis.h.

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

Definition at line 144 of file vis.h.

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

Definition at line 65 of file vis.h.

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

Definition at line 64 of file vis.h.

Referenced by vis_alignaddr(), vis_alignaddr_g0(), vis_alignaddrl(), and vis_alignaddrl_g0().

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

Definition at line 61 of file vis.h.

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

Definition at line 60 of file vis.h.

Referenced by vis_alignaddr(), vis_alignaddr_g0(), vis_alignaddrl(), and vis_alignaddrl_g0().

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

Definition at line 63 of file vis.h.

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

Definition at line 62 of file vis.h.

Referenced by vis_alignaddr(), vis_alignaddr_g0(), vis_alignaddrl(), and vis_alignaddrl_g0().

#define vis_s (   opf,
  rd 
)
Value:
__asm__ volatile (".word %0" \
: : "i" (vis_opc_base | vis_opf(opf) | \
vis_rd_s(rd)))
#define vis_opc_base
Definition: vis.h:56
#define vis_opf(X)
Definition: vis.h:57
#define vis_rd_s(X)
Definition: vis.h:64

Definition at line 131 of file vis.h.

#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_opc_base
Definition: vis.h:56
#define vis_opf(X)
Definition: vis.h:57
#define vis_rd_s(X)
Definition: vis.h:64
#define vis_rs1_s(X)
Definition: vis.h:60

Definition at line 119 of file vis.h.

#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_opc_base
Definition: vis.h:56
#define vis_rs2_s(X)
Definition: vis.h:62
#define vis_opf(X)
Definition: vis.h:57
#define vis_rd_s(X)
Definition: vis.h:64

Definition at line 125 of file vis.h.

#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)))
#define vis_opc_base
Definition: vis.h:56
#define vis_rd_d(X)
Definition: vis.h:65
#define vis_rs2_s(X)
Definition: vis.h:62
#define vis_opf(X)
Definition: vis.h:57

Definition at line 101 of file vis.h.

#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)))
#define vis_opc_base
Definition: vis.h:56
#define vis_rd_d(X)
Definition: vis.h:65
#define vis_rs2_d(X)
Definition: vis.h:63
#define vis_opf(X)
Definition: vis.h:57
#define vis_rs1_s(X)
Definition: vis.h:60

Definition at line 88 of file vis.h.

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

Definition at line 310 of file vis.h.

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

Definition at line 311 of file vis.h.

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

Definition at line 312 of file vis.h.

#define vis_sreg (   X)    (X)

Definition at line 58 of file vis.h.

#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)))
#define vis_opc_base
Definition: vis.h:56
#define vis_rd_d(X)
Definition: vis.h:65
#define vis_rs2_s(X)
Definition: vis.h:62
#define vis_opf(X)
Definition: vis.h:57
#define vis_rs1_s(X)
Definition: vis.h:60

Definition at line 81 of file vis.h.

#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)))
#define vis_opc_base
Definition: vis.h:56
#define vis_rs2_s(X)
Definition: vis.h:62
#define vis_opf(X)
Definition: vis.h:57
#define vis_rd_s(X)
Definition: vis.h:64
#define vis_rs1_s(X)
Definition: vis.h:60

Definition at line 67 of file vis.h.

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

Definition at line 169 of file vis.h.

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

Definition at line 170 of file vis.h.

#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)
#define vis_rd_d(X)
Definition: vis.h:65
int mem
Definition: avisynth_c.h:721

Definition at line 186 of file vis.h.

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

Definition at line 327 of file vis.h.

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

Definition at line 328 of file vis.h.

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

Definition at line 326 of file vis.h.

Function Documentation

static void* vis_alignaddrl ( void _ptr)
inlinestatic

Definition at line 269 of file vis.h.

static void vis_alignaddrl_g0 ( void _ptr)
inlinestatic

Definition at line 286 of file vis.h.

static int vis_level ( void  )
inlinestatic

Definition at line 48 of file vis.h.

Referenced by ff_dsputil_init_vis(), and ff_hpeldsp_init_vis().