QtBase  v6.3.1
Classes | Macros | Typedefs | Enumerations | Functions
sljitNativeS390X.c File Reference
#include <sys/auxv.h>
Include dependency graph for sljitNativeS390X.c:

Go to the source code of this file.

Classes

struct  sljit_s390x_const
 
struct  addr
 
struct  ins_forms
 

Macros

#define ENABLE_STATIC_FACILITY_DETECTION   0
 
#define ENABLE_DYNAMIC_FACILITY_DETECTION   1
 
#define TMP_REG1   (SLJIT_NUMBER_OF_REGISTERS + 2)
 
#define TMP_REG2   (SLJIT_NUMBER_OF_REGISTERS + 3)
 
#define tmp0   r0
 
#define tmp1   r1
 
#define IS_GPR_REG(reg)   ((reg > 0) && (reg) <= SLJIT_SP)
 
#define TMP_FREG1   (0)
 
#define R0A(r)   (r)
 
#define R4A(r)   ((r) << 4)
 
#define R8A(r)   ((r) << 8)
 
#define R12A(r)   ((r) << 12)
 
#define R16A(r)   ((r) << 16)
 
#define R20A(r)   ((r) << 20)
 
#define R28A(r)   ((r) << 28)
 
#define R32A(r)   ((r) << 32)
 
#define R36A(r)   ((r) << 36)
 
#define R0(r)   ((sljit_ins)reg_map[r])
 
#define F0(r)   ((sljit_ins)freg_map[r])
 
#define F4(r)   (R4A((sljit_ins)freg_map[r]))
 
#define F20(r)   (R20A((sljit_ins)freg_map[r]))
 
#define F36(r)   (R36A((sljit_ins)freg_map[r]))
 
#define SLJIT_ADD_SUB_NO_COMPARE(status_flags_state)
 
#define STORE_FACILITY_LIST_EXTENDED_FACILITY   7
 
#define FAST_LONG_DISPLACEMENT_FACILITY   19
 
#define EXTENDED_IMMEDIATE_FACILITY   21
 
#define GENERAL_INSTRUCTION_EXTENSION_FACILITY   34
 
#define DISTINCT_OPERAND_FACILITY   45
 
#define HIGH_WORD_FACILITY   45
 
#define POPULATION_COUNT_FACILITY   45
 
#define LOAD_STORE_ON_CONDITION_1_FACILITY   45
 
#define MISCELLANEOUS_INSTRUCTION_EXTENSIONS_1_FACILITY   49
 
#define LOAD_STORE_ON_CONDITION_2_FACILITY   53
 
#define MISCELLANEOUS_INSTRUCTION_EXTENSIONS_2_FACILITY   58
 
#define VECTOR_FACILITY   129
 
#define VECTOR_ENHANCEMENTS_1_FACILITY   135
 
#define HAVE_FACILITY(name, bit)
 
#define is_u12(d)   (0 <= (d) && (d) <= 0x00000fffL)
 
#define is_u32(d)   (0 <= (d) && (d) <= 0xffffffffL)
 
#define CHECK_SIGNED(v, bitlen)    ((v) >= -(1 << ((bitlen) - 1)) && (v) < (1 << ((bitlen) - 1)))
 
#define is_s8(d)   CHECK_SIGNED((d), 8)
 
#define is_s16(d)   CHECK_SIGNED((d), 16)
 
#define is_s20(d)   CHECK_SIGNED((d), 20)
 
#define is_s32(d)   ((d) == (sljit_s32)(d))
 
#define SLJIT_S390X_INSTRUCTION(op, ...)   static SLJIT_INLINE sljit_ins op(__VA_ARGS__)
 
#define SLJIT_S390X_RR(name, pattern)
 
#define SLJIT_S390X_RRE(name, pattern)
 
#define SLJIT_S390X_RIA(name, pattern, imm_type)
 
#define SLJIT_S390X_RILA(name, pattern, imm_type)
 
#define SLJIT_S390X_RXA(name, pattern)
 
#define SLJIT_S390X_RXYA(name, pattern, cond)
 
#define SLJIT_S390X_RSYA(name, pattern, cond)
 
#define SLJIT_S390X_RIEF(name, pattern)
 
#define SLJIT_S390X_RRFC(name, pattern)
 
#define SLJIT_S390X_RIEG(name, pattern)
 
#define SLJIT_S390X_RILB(name, pattern, cond)
 
#define EVAL(op, r, addr)   op(r, addr.offset, addr.index, addr.base)
 
#define WHEN(cond, r, i1, i2, addr)    (cond) ? EVAL(i1, r, addr) : EVAL(i2, r, addr)
 
#define WHEN2(cond, i1, i2)   (cond) ? LEVAL(i1) : LEVAL(i2)
 
#define LEVAL(i)   EVAL(i, reg, mem)
 
#define FLOAT_LOAD   0
 
#define FLOAT_STORE   1
 
#define FLOAT_MOV(op, dst_r, src_r)    (((op & SLJIT_32) ? 0x3800 /* ler */ : 0x2800 /* ldr */) | F4(dst_r) | F0(src_r))
 
#define LEVAL(i)   i(loc_r, 1, mask)
 
#define LEVAL(i)   i(dst_r, loc_r)
 
#define LEVAL(i)   i(dst_r, src_r, mask)
 

Typedefs

typedef sljit_uw sljit_ins
 
typedef sljit_uw sljit_gpr
 
typedef sljit_uw facility_bit
 

Enumerations

enum  emit_ril_type { RI_A , RIL_A }
 
enum  emit_rx_type { RX_A , RXY_A }
 

Functions

SLJIT_API_FUNC_ATTRIBUTE const char * sljit_get_platform_name (void)
 
 SLJIT_S390X_RR (bcr, 0x0700)
 
 SLJIT_S390X_INSTRUCTION (brc, sljit_uw mask, sljit_sw target)
 
 SLJIT_S390X_INSTRUCTION (brcl, sljit_uw mask, sljit_sw target)
 
 SLJIT_S390X_INSTRUCTION (flogr, sljit_gpr dst, sljit_gpr src)
 
 SLJIT_S390X_INSTRUCTION (ipm, sljit_gpr dst)
 
 SLJIT_S390X_INSTRUCTION (spm, sljit_gpr dst)
 
 SLJIT_S390X_INSTRUCTION (risbhgz, sljit_gpr dst, sljit_gpr src, sljit_u8 start, sljit_u8 end, sljit_u8 rot)
 
SLJIT_API_FUNC_ATTRIBUTE voidsljit_generate_code (struct sljit_compiler *compiler)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_has_cpu_feature (sljit_s32 feature_type)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_enter (struct sljit_compiler *compiler, sljit_s32 options, sljit_s32 arg_types, sljit_s32 scratches, sljit_s32 saveds, sljit_s32 fscratches, sljit_s32 fsaveds, sljit_s32 local_size)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_set_context (struct sljit_compiler *compiler, sljit_s32 options, sljit_s32 arg_types, sljit_s32 scratches, sljit_s32 saveds, sljit_s32 fscratches, sljit_s32 fsaveds, sljit_s32 local_size)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_return_void (struct sljit_compiler *compiler)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op0 (struct sljit_compiler *compiler, sljit_s32 op)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op1 (struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, sljit_s32 src, sljit_sw srcw)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op2 (struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, sljit_s32 src1, sljit_sw src1w, sljit_s32 src2, sljit_sw src2w)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op2u (struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 src1, sljit_sw src1w, sljit_s32 src2, sljit_sw src2w)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_src (struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 src, sljit_sw srcw)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_get_register_index (sljit_s32 reg)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_get_float_register_index (sljit_s32 reg)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_custom (struct sljit_compiler *compiler, void *instruction, sljit_u32 size)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fop1 (struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, sljit_s32 src, sljit_sw srcw)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fop2 (struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, sljit_s32 src1, sljit_sw src1w, sljit_s32 src2, sljit_sw src2w)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fast_enter (struct sljit_compiler *compiler, sljit_s32 dst, sljit_sw dstw)
 
SLJIT_API_FUNC_ATTRIBUTE struct sljit_labelsljit_emit_label (struct sljit_compiler *compiler)
 
SLJIT_API_FUNC_ATTRIBUTE struct sljit_jumpsljit_emit_jump (struct sljit_compiler *compiler, sljit_s32 type)
 
SLJIT_API_FUNC_ATTRIBUTE struct sljit_jumpsljit_emit_call (struct sljit_compiler *compiler, sljit_s32 type, sljit_s32 arg_types)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_ijump (struct sljit_compiler *compiler, sljit_s32 type, sljit_s32 src, sljit_sw srcw)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_icall (struct sljit_compiler *compiler, sljit_s32 type, sljit_s32 arg_types, sljit_s32 src, sljit_sw srcw)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_flags (struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, sljit_s32 type)
 
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_cmov (struct sljit_compiler *compiler, sljit_s32 type, sljit_s32 dst_reg, sljit_s32 src, sljit_sw srcw)
 
SLJIT_API_FUNC_ATTRIBUTE struct sljit_constsljit_emit_const (struct sljit_compiler *compiler, sljit_s32 dst, sljit_sw dstw, sljit_sw init_value)
 
SLJIT_API_FUNC_ATTRIBUTE void sljit_set_jump_addr (sljit_uw addr, sljit_uw new_target, sljit_sw executable_offset)
 
SLJIT_API_FUNC_ATTRIBUTE void sljit_set_const (sljit_uw addr, sljit_sw new_constant, sljit_sw executable_offset)
 
SLJIT_API_FUNC_ATTRIBUTE struct sljit_put_labelsljit_emit_put_label (struct sljit_compiler *compiler, sljit_s32 dst, sljit_sw dstw)
 

Macro Definition Documentation

◆ CHECK_SIGNED

#define CHECK_SIGNED (   v,
  bitlen 
)     ((v) >= -(1 << ((bitlen) - 1)) && (v) < (1 << ((bitlen) - 1)))

Definition at line 430 of file sljitNativeS390X.c.

◆ DISTINCT_OPERAND_FACILITY

#define DISTINCT_OPERAND_FACILITY   45

Definition at line 315 of file sljitNativeS390X.c.

◆ ENABLE_DYNAMIC_FACILITY_DETECTION

#define ENABLE_DYNAMIC_FACILITY_DETECTION   1

Definition at line 34 of file sljitNativeS390X.c.

◆ ENABLE_STATIC_FACILITY_DETECTION

#define ENABLE_STATIC_FACILITY_DETECTION   0

Definition at line 32 of file sljitNativeS390X.c.

◆ EVAL

#define EVAL (   op,
  r,
  addr 
)    op(r, addr.offset, addr.index, addr.base)

Definition at line 976 of file sljitNativeS390X.c.

◆ EXTENDED_IMMEDIATE_FACILITY

#define EXTENDED_IMMEDIATE_FACILITY   21

Definition at line 313 of file sljitNativeS390X.c.

◆ F0

#define F0 (   r)    ((sljit_ins)freg_map[r])

Definition at line 130 of file sljitNativeS390X.c.

◆ F20

#define F20 (   r)    (R20A((sljit_ins)freg_map[r]))

Definition at line 132 of file sljitNativeS390X.c.

◆ F36

#define F36 (   r)    (R36A((sljit_ins)freg_map[r]))

Definition at line 133 of file sljitNativeS390X.c.

◆ F4

#define F4 (   r)    (R4A((sljit_ins)freg_map[r]))

Definition at line 131 of file sljitNativeS390X.c.

◆ FAST_LONG_DISPLACEMENT_FACILITY

#define FAST_LONG_DISPLACEMENT_FACILITY   19

Definition at line 312 of file sljitNativeS390X.c.

◆ FLOAT_LOAD

#define FLOAT_LOAD   0

Definition at line 2806 of file sljitNativeS390X.c.

◆ FLOAT_MOV

#define FLOAT_MOV (   op,
  dst_r,
  src_r 
)     (((op & SLJIT_32) ? 0x3800 /* ler */ : 0x2800 /* ldr */) | F4(dst_r) | F0(src_r))

Definition at line 2984 of file sljitNativeS390X.c.

◆ FLOAT_STORE

#define FLOAT_STORE   1

Definition at line 2807 of file sljitNativeS390X.c.

◆ GENERAL_INSTRUCTION_EXTENSION_FACILITY

#define GENERAL_INSTRUCTION_EXTENSION_FACILITY   34

Definition at line 314 of file sljitNativeS390X.c.

◆ HAVE_FACILITY

#define HAVE_FACILITY (   name,
  bit 
)
Value:
static SLJIT_INLINE int name() \
{ \
static int have = -1; \
/* Static check first. May allow the function to be optimized away. */ \
if (have_facility_static(bit)) \
have = 1; \
else if (SLJIT_UNLIKELY(have < 0)) \
have = have_facility_dynamic(bit) ? 1 : 0; \
\
return have; \
}
GLuint name
#define SLJIT_UNLIKELY(x)
#define SLJIT_INLINE

Definition at line 406 of file sljitNativeS390X.c.

◆ HIGH_WORD_FACILITY

#define HIGH_WORD_FACILITY   45

Definition at line 316 of file sljitNativeS390X.c.

◆ IS_GPR_REG

#define IS_GPR_REG (   reg)    ((reg > 0) && (reg) <= SLJIT_SP)

Definition at line 104 of file sljitNativeS390X.c.

◆ is_s16

#define is_s16 (   d)    CHECK_SIGNED((d), 16)

Definition at line 434 of file sljitNativeS390X.c.

◆ is_s20

#define is_s20 (   d)    CHECK_SIGNED((d), 20)

Definition at line 435 of file sljitNativeS390X.c.

◆ is_s32

#define is_s32 (   d)    ((d) == (sljit_s32)(d))

Definition at line 436 of file sljitNativeS390X.c.

◆ is_s8

#define is_s8 (   d)    CHECK_SIGNED((d), 8)

Definition at line 433 of file sljitNativeS390X.c.

◆ is_u12

#define is_u12 (   d)    (0 <= (d) && (d) <= 0x00000fffL)

Definition at line 427 of file sljitNativeS390X.c.

◆ is_u32

#define is_u32 (   d)    (0 <= (d) && (d) <= 0xffffffffL)

Definition at line 428 of file sljitNativeS390X.c.

◆ LEVAL [1/4]

#define LEVAL (   i)    EVAL(i, reg, mem)

◆ LEVAL [2/4]

#define LEVAL (   i)    i(loc_r, 1, mask)

◆ LEVAL [3/4]

#define LEVAL (   i)    i(dst_r, loc_r)

◆ LEVAL [4/4]

#define LEVAL (   i)    i(dst_r, src_r, mask)

◆ LOAD_STORE_ON_CONDITION_1_FACILITY

#define LOAD_STORE_ON_CONDITION_1_FACILITY   45

Definition at line 318 of file sljitNativeS390X.c.

◆ LOAD_STORE_ON_CONDITION_2_FACILITY

#define LOAD_STORE_ON_CONDITION_2_FACILITY   53

Definition at line 320 of file sljitNativeS390X.c.

◆ MISCELLANEOUS_INSTRUCTION_EXTENSIONS_1_FACILITY

#define MISCELLANEOUS_INSTRUCTION_EXTENSIONS_1_FACILITY   49

Definition at line 319 of file sljitNativeS390X.c.

◆ MISCELLANEOUS_INSTRUCTION_EXTENSIONS_2_FACILITY

#define MISCELLANEOUS_INSTRUCTION_EXTENSIONS_2_FACILITY   58

Definition at line 321 of file sljitNativeS390X.c.

◆ POPULATION_COUNT_FACILITY

#define POPULATION_COUNT_FACILITY   45

Definition at line 317 of file sljitNativeS390X.c.

◆ R0

#define R0 (   r)    ((sljit_ins)reg_map[r])

Definition at line 128 of file sljitNativeS390X.c.

◆ R0A

#define R0A (   r)    (r)

Definition at line 118 of file sljitNativeS390X.c.

◆ R12A

#define R12A (   r)    ((r) << 12)

Definition at line 121 of file sljitNativeS390X.c.

◆ R16A

#define R16A (   r)    ((r) << 16)

Definition at line 122 of file sljitNativeS390X.c.

◆ R20A

#define R20A (   r)    ((r) << 20)

Definition at line 123 of file sljitNativeS390X.c.

◆ R28A

#define R28A (   r)    ((r) << 28)

Definition at line 124 of file sljitNativeS390X.c.

◆ R32A

#define R32A (   r)    ((r) << 32)

Definition at line 125 of file sljitNativeS390X.c.

◆ R36A

#define R36A (   r)    ((r) << 36)

Definition at line 126 of file sljitNativeS390X.c.

◆ R4A

#define R4A (   r)    ((r) << 4)

Definition at line 119 of file sljitNativeS390X.c.

◆ R8A

#define R8A (   r)    ((r) << 8)

Definition at line 120 of file sljitNativeS390X.c.

◆ SLJIT_ADD_SUB_NO_COMPARE

#define SLJIT_ADD_SUB_NO_COMPARE (   status_flags_state)
Value:
(((status_flags_state) & (SLJIT_CURRENT_FLAGS_ADD | SLJIT_CURRENT_FLAGS_SUB)) \
&& !((status_flags_state) & SLJIT_CURRENT_FLAGS_COMPARE))
#define SLJIT_CURRENT_FLAGS_COMPARE
Definition: sljitLir.h:1577
#define SLJIT_CURRENT_FLAGS_ADD
Definition: sljitLir.h:1571
#define SLJIT_CURRENT_FLAGS_SUB
Definition: sljitLir.h:1573

Definition at line 200 of file sljitNativeS390X.c.

◆ SLJIT_S390X_INSTRUCTION

#define SLJIT_S390X_INSTRUCTION (   op,
  ... 
)    static SLJIT_INLINE sljit_ins op(__VA_ARGS__)

Definition at line 448 of file sljitNativeS390X.c.

◆ SLJIT_S390X_RIA

#define SLJIT_S390X_RIA (   name,
  pattern,
  imm_type 
)
Value:
SLJIT_S390X_INSTRUCTION(name, sljit_gpr reg, imm_type imm) \
{ \
return (pattern) | R20A(reg) | (imm & 0xffff); \
}
GLubyte * pattern
Definition: qopenglext.h:2744
#define SLJIT_S390X_INSTRUCTION(op,...)
#define R20A(r)
sljit_uw sljit_gpr

◆ SLJIT_S390X_RIEF

#define SLJIT_S390X_RIEF (   name,
  pattern 
)
Value:
{ \
sljit_ins i3, i4, i5; \
SLJIT_ASSERT(have_genext()); \
i3 = (sljit_ins)start << 24; \
i4 = (sljit_ins)end << 16; \
i5 = (sljit_ins)rot << 8; \
return (pattern) | R36A(dst & 0xf) | R32A(src & 0xf) | i3 | i4 | i5; \
}
float rot
GLuint GLuint end
GLenum src
GLenum GLenum dst
GLuint start
unsigned char sljit_u8
#define SLJIT_ASSERT(x)
#define R36A(r)
#define R32A(r)
sljit_uw sljit_ins

◆ SLJIT_S390X_RIEG

#define SLJIT_S390X_RIEG (   name,
  pattern 
)
Value:
{ \
sljit_ins m3, i2; \
SLJIT_ASSERT(have_lscond2()); \
m3 = (sljit_ins)(mask & 0xf) << 32; \
i2 = (sljit_ins)(imm & 0xffffL) << 16; \
return (pattern) | R36A(reg) | m3 | i2; \
}
GLint GLint GLint GLint GLint GLint GLint GLbitfield mask
unsigned long int sljit_uw
long int sljit_sw

◆ SLJIT_S390X_RILA

#define SLJIT_S390X_RILA (   name,
  pattern,
  imm_type 
)
Value:
SLJIT_S390X_INSTRUCTION(name, sljit_gpr reg, imm_type imm) \
{ \
SLJIT_ASSERT(have_eimm()); \
return (pattern) | R36A(reg) | ((sljit_ins)imm & 0xffffffffu); \
}

◆ SLJIT_S390X_RILB

#define SLJIT_S390X_RILB (   name,
  pattern,
  cond 
)
Value:
{ \
SLJIT_ASSERT(cond); \
return (pattern) | R36A(reg) | (sljit_ins)(ri & 0xffffffff); \
}
QWaitCondition cond

◆ SLJIT_S390X_RR

#define SLJIT_S390X_RR (   name,
  pattern 
)
Value:
{ \
return (pattern) | ((dst & 0xf) << 4) | (src & 0xf); \
}

Definition at line 452 of file sljitNativeS390X.c.

◆ SLJIT_S390X_RRE

#define SLJIT_S390X_RRE (   name,
  pattern 
)
Value:
{ \
return (pattern) | R4A(dst) | R0A(src); \
}
#define R4A(r)
#define R0A(r)

◆ SLJIT_S390X_RRFC

#define SLJIT_S390X_RRFC (   name,
  pattern 
)
Value:
{ \
sljit_ins m3; \
SLJIT_ASSERT(have_lscond1()); \
m3 = (sljit_ins)(mask & 0xf) << 12; \
return (pattern) | m3 | R4A(dst) | R0A(src); \
}

◆ SLJIT_S390X_RSYA

#define SLJIT_S390X_RSYA (   name,
  pattern,
  cond 
)
Value:
{ \
SLJIT_ASSERT(cond); \
return (pattern) | R36A(dst) | R32A(src) | R28A(b) | disp_s20(d); \
}
GLboolean GLboolean GLboolean b
signed int sljit_s32
#define R28A(r)

◆ SLJIT_S390X_RXA

#define SLJIT_S390X_RXA (   name,
  pattern 
)
Value:
{ \
SLJIT_ASSERT((d & 0xfff) == d); \
return (pattern) | R20A(r) | R16A(x) | R12A(b) | (sljit_ins)(d & 0xfff); \
}
GLint GLint GLint GLint GLint x
[0]
GLboolean r
[2]
#define R12A(r)
#define R16A(r)

◆ SLJIT_S390X_RXYA

#define SLJIT_S390X_RXYA (   name,
  pattern,
  cond 
)
Value:
{ \
SLJIT_ASSERT(cond); \
return (pattern) | R36A(r) | R32A(x) | R28A(b) | disp_s20(d); \
}

◆ STORE_FACILITY_LIST_EXTENDED_FACILITY

#define STORE_FACILITY_LIST_EXTENDED_FACILITY   7

Definition at line 311 of file sljitNativeS390X.c.

◆ tmp0

#define tmp0   r0

Definition at line 96 of file sljitNativeS390X.c.

◆ tmp1

#define tmp1   r1

Definition at line 97 of file sljitNativeS390X.c.

◆ TMP_FREG1

#define TMP_FREG1   (0)

Definition at line 112 of file sljitNativeS390X.c.

◆ TMP_REG1

#define TMP_REG1   (SLJIT_NUMBER_OF_REGISTERS + 2)

Definition at line 47 of file sljitNativeS390X.c.

◆ TMP_REG2

#define TMP_REG2   (SLJIT_NUMBER_OF_REGISTERS + 3)

Definition at line 48 of file sljitNativeS390X.c.

◆ VECTOR_ENHANCEMENTS_1_FACILITY

#define VECTOR_ENHANCEMENTS_1_FACILITY   135

Definition at line 323 of file sljitNativeS390X.c.

◆ VECTOR_FACILITY

#define VECTOR_FACILITY   129

Definition at line 322 of file sljitNativeS390X.c.

◆ WHEN

#define WHEN (   cond,
  r,
  i1,
  i2,
  addr 
)     (cond) ? EVAL(i1, r, addr) : EVAL(i2, r, addr)

Definition at line 977 of file sljitNativeS390X.c.

◆ WHEN2

#define WHEN2 (   cond,
  i1,
  i2 
)    (cond) ? LEVAL(i1) : LEVAL(i2)

Definition at line 1862 of file sljitNativeS390X.c.

Typedef Documentation

◆ facility_bit

Definition at line 310 of file sljitNativeS390X.c.

◆ sljit_gpr

Definition at line 60 of file sljitNativeS390X.c.

◆ sljit_ins

Definition at line 42 of file sljitNativeS390X.c.

Enumeration Type Documentation

◆ emit_ril_type

Enumerator
RI_A 
RIL_A 

Definition at line 1116 of file sljitNativeS390X.c.

◆ emit_rx_type

Enumerator
RX_A 
RXY_A 

Definition at line 1161 of file sljitNativeS390X.c.

Function Documentation

◆ sljit_emit_call()

SLJIT_API_FUNC_ATTRIBUTE struct sljit_jump* sljit_emit_call ( struct sljit_compiler compiler,
sljit_s32  type,
sljit_s32  arg_types 
)

Definition at line 3117 of file sljitNativeS390X.c.

◆ sljit_emit_cmov()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_cmov ( struct sljit_compiler compiler,
sljit_s32  type,
sljit_s32  dst_reg,
sljit_s32  src,
sljit_sw  srcw 
)

Definition at line 3262 of file sljitNativeS390X.c.

◆ sljit_emit_const()

SLJIT_API_FUNC_ATTRIBUTE struct sljit_const* sljit_emit_const ( struct sljit_compiler compiler,
sljit_s32  dst,
sljit_sw  dstw,
sljit_sw  init_value 
)

Definition at line 3303 of file sljitNativeS390X.c.

Here is the call graph for this function:

◆ sljit_emit_enter()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_enter ( struct sljit_compiler compiler,
sljit_s32  options,
sljit_s32  arg_types,
sljit_s32  scratches,
sljit_s32  saveds,
sljit_s32  fscratches,
sljit_s32  fsaveds,
sljit_s32  local_size 
)

Definition at line 1635 of file sljitNativeS390X.c.

◆ sljit_emit_fast_enter()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fast_enter ( struct sljit_compiler compiler,
sljit_s32  dst,
sljit_sw  dstw 
)

Definition at line 3060 of file sljitNativeS390X.c.

◆ sljit_emit_fop1()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fop1 ( struct sljit_compiler compiler,
sljit_s32  op,
sljit_s32  dst,
sljit_sw  dstw,
sljit_s32  src,
sljit_sw  srcw 
)

Definition at line 2929 of file sljitNativeS390X.c.

◆ sljit_emit_fop2()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fop2 ( struct sljit_compiler compiler,
sljit_s32  op,
sljit_s32  dst,
sljit_sw  dstw,
sljit_s32  src1,
sljit_sw  src1w,
sljit_s32  src2,
sljit_sw  src2w 
)

Definition at line 2987 of file sljitNativeS390X.c.

◆ sljit_emit_icall()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_icall ( struct sljit_compiler compiler,
sljit_s32  type,
sljit_s32  arg_types,
sljit_s32  src,
sljit_sw  srcw 
)

Definition at line 3159 of file sljitNativeS390X.c.

◆ sljit_emit_ijump()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_ijump ( struct sljit_compiler compiler,
sljit_s32  type,
sljit_s32  src,
sljit_sw  srcw 
)

Definition at line 3136 of file sljitNativeS390X.c.

◆ sljit_emit_jump()

SLJIT_API_FUNC_ATTRIBUTE struct sljit_jump* sljit_emit_jump ( struct sljit_compiler compiler,
sljit_s32  type 
)

Definition at line 3093 of file sljitNativeS390X.c.

◆ sljit_emit_label()

SLJIT_API_FUNC_ATTRIBUTE struct sljit_label* sljit_emit_label ( struct sljit_compiler compiler)

Definition at line 3077 of file sljitNativeS390X.c.

◆ sljit_emit_op0()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op0 ( struct sljit_compiler compiler,
sljit_s32  op 
)

Definition at line 1777 of file sljitNativeS390X.c.

◆ sljit_emit_op1()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op1 ( struct sljit_compiler compiler,
sljit_s32  op,
sljit_s32  dst,
sljit_sw  dstw,
sljit_s32  src,
sljit_sw  srcw 
)

Definition at line 1864 of file sljitNativeS390X.c.

◆ sljit_emit_op2()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op2 ( struct sljit_compiler compiler,
sljit_s32  op,
sljit_s32  dst,
sljit_sw  dstw,
sljit_s32  src1,
sljit_sw  src1w,
sljit_s32  src2,
sljit_sw  src2w 
)

Definition at line 2667 of file sljitNativeS390X.c.

Here is the caller graph for this function:

◆ sljit_emit_op2u()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op2u ( struct sljit_compiler compiler,
sljit_s32  op,
sljit_s32  src1,
sljit_sw  src1w,
sljit_s32  src2,
sljit_sw  src2w 
)

Definition at line 2730 of file sljitNativeS390X.c.

Here is the call graph for this function:

◆ sljit_emit_op_custom()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_custom ( struct sljit_compiler compiler,
void instruction,
sljit_u32  size 
)

Definition at line 2790 of file sljitNativeS390X.c.

◆ sljit_emit_op_flags()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_flags ( struct sljit_compiler compiler,
sljit_s32  op,
sljit_s32  dst,
sljit_sw  dstw,
sljit_s32  type 
)

Definition at line 3192 of file sljitNativeS390X.c.

◆ sljit_emit_op_src()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_src ( struct sljit_compiler compiler,
sljit_s32  op,
sljit_s32  src,
sljit_sw  srcw 
)

Definition at line 2744 of file sljitNativeS390X.c.

◆ sljit_emit_put_label()

SLJIT_API_FUNC_ATTRIBUTE struct sljit_put_label* sljit_emit_put_label ( struct sljit_compiler compiler,
sljit_s32  dst,
sljit_sw  dstw 
)

Definition at line 3348 of file sljitNativeS390X.c.

◆ sljit_emit_return_void()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_return_void ( struct sljit_compiler compiler)

Definition at line 1764 of file sljitNativeS390X.c.

◆ sljit_generate_code()

SLJIT_API_FUNC_ATTRIBUTE void* sljit_generate_code ( struct sljit_compiler compiler)

Definition at line 1393 of file sljitNativeS390X.c.

◆ sljit_get_float_register_index()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_get_float_register_index ( sljit_s32  reg)

Definition at line 2784 of file sljitNativeS390X.c.

◆ sljit_get_platform_name()

SLJIT_API_FUNC_ATTRIBUTE const char* sljit_get_platform_name ( void  )

Definition at line 36 of file sljitNativeS390X.c.

◆ sljit_get_register_index()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_get_register_index ( sljit_s32  reg)

Definition at line 2778 of file sljitNativeS390X.c.

◆ sljit_has_cpu_feature()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_has_cpu_feature ( sljit_s32  feature_type)

Definition at line 1617 of file sljitNativeS390X.c.

◆ SLJIT_S390X_INSTRUCTION() [1/6]

SLJIT_S390X_INSTRUCTION ( brc  ,
sljit_uw  mask,
sljit_sw  target 
)

Definition at line 809 of file sljitNativeS390X.c.

◆ SLJIT_S390X_INSTRUCTION() [2/6]

SLJIT_S390X_INSTRUCTION ( brcl  ,
sljit_uw  mask,
sljit_sw  target 
)

Definition at line 816 of file sljitNativeS390X.c.

◆ SLJIT_S390X_INSTRUCTION() [3/6]

SLJIT_S390X_INSTRUCTION ( flogr  ,
sljit_gpr  dst,
sljit_gpr  src 
)

Definition at line 823 of file sljitNativeS390X.c.

◆ SLJIT_S390X_INSTRUCTION() [4/6]

SLJIT_S390X_INSTRUCTION ( ipm  ,
sljit_gpr  dst 
)

Definition at line 830 of file sljitNativeS390X.c.

◆ SLJIT_S390X_INSTRUCTION() [5/6]

SLJIT_S390X_INSTRUCTION ( risbhgz  ,
sljit_gpr  dst,
sljit_gpr  src,
sljit_u8  start,
sljit_u8  end,
sljit_u8  rot 
)

Definition at line 842 of file sljitNativeS390X.c.

◆ SLJIT_S390X_INSTRUCTION() [6/6]

SLJIT_S390X_INSTRUCTION ( spm  ,
sljit_gpr  dst 
)

Definition at line 836 of file sljitNativeS390X.c.

◆ SLJIT_S390X_RR()

SLJIT_S390X_RR ( bcr  ,
0x0700   
)

Definition at line 465 of file sljitNativeS390X.c.

◆ sljit_set_const()

SLJIT_API_FUNC_ATTRIBUTE void sljit_set_const ( sljit_uw  addr,
sljit_sw  new_constant,
sljit_sw  executable_offset 
)

Definition at line 3343 of file sljitNativeS390X.c.

Here is the call graph for this function:

◆ sljit_set_context()

SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_set_context ( struct sljit_compiler compiler,
sljit_s32  options,
sljit_s32  arg_types,
sljit_s32  scratches,
sljit_s32  saveds,
sljit_s32  fscratches,
sljit_s32  fsaveds,
sljit_s32  local_size 
)

Definition at line 1704 of file sljitNativeS390X.c.

◆ sljit_set_jump_addr()

SLJIT_API_FUNC_ATTRIBUTE void sljit_set_jump_addr ( sljit_uw  addr,
sljit_uw  new_target,
sljit_sw  executable_offset 
)

Definition at line 3331 of file sljitNativeS390X.c.

Here is the caller graph for this function: