More sonarlint work
This commit is contained in:
@@ -38,7 +38,9 @@ typedef struct voodoo_x86_data_t {
|
||||
int is_tiled;
|
||||
} voodoo_x86_data_t;
|
||||
|
||||
// static voodoo_x86_data_t voodoo_x86_data[2][BLOCK_NUM];
|
||||
#if 0
|
||||
static voodoo_x86_data_t voodoo_x86_data[2][BLOCK_NUM];
|
||||
#endif
|
||||
|
||||
static int last_block[4] = { 0, 0 };
|
||||
static int next_block_to_write[4] = { 0, 0 };
|
||||
@@ -234,10 +236,12 @@ codegen_texture_fetch(uint8_t *code_block, voodoo_t *voodoo, voodoo_params_t *pa
|
||||
addlong(1);
|
||||
addbyte(0x28); /*SUB DL, CL*/
|
||||
addbyte(0xca);
|
||||
// addbyte(0x8a); /*MOV DL, params->tex_shift[RSI+ECX*4]*/
|
||||
// addbyte(0x94);
|
||||
// addbyte(0x8e);
|
||||
// addlong(offsetof(voodoo_params_t, tex_shift));
|
||||
#if 0
|
||||
addbyte(0x8a); /*MOV DL, params->tex_shift[RSI+ECX*4]*/
|
||||
addbyte(0x94);
|
||||
addbyte(0x8e);
|
||||
addlong(offsetof(voodoo_params_t, tex_shift));
|
||||
#endif
|
||||
addbyte(0xd3); /*SHL EBP, CL*/
|
||||
addbyte(0xe5);
|
||||
addbyte(0x8b); /*MOV EAX, state->tex_s[RDI]*/
|
||||
@@ -656,24 +660,29 @@ voodoo_generate(uint8_t *code_block, voodoo_t *voodoo, voodoo_params_t *params,
|
||||
int depth_jump_pos = 0;
|
||||
int depth_jump_pos2 = 0;
|
||||
int loop_jump_pos = 0;
|
||||
// xmm_01_w = (__m128i)0x0001000100010001ull;
|
||||
// xmm_ff_w = (__m128i)0x00ff00ff00ff00ffull;
|
||||
// xmm_ff_b = (__m128i)0x00000000ffffffffull;
|
||||
#if 0
|
||||
xmm_01_w = (__m128i)0x0001000100010001ull;
|
||||
xmm_ff_w = (__m128i)0x00ff00ff00ff00ffull;
|
||||
xmm_ff_b = (__m128i)0x00000000ffffffffull;
|
||||
#endif
|
||||
xmm_01_w = _mm_set_epi32(0, 0, 0x00010001, 0x00010001);
|
||||
xmm_ff_w = _mm_set_epi32(0, 0, 0x00ff00ff, 0x00ff00ff);
|
||||
xmm_ff_b = _mm_set_epi32(0, 0, 0, 0x00ffffff);
|
||||
minus_254 = _mm_set_epi32(0, 0, 0xff02ff02, 0xff02ff02);
|
||||
// *(uint64_t *)&const_1_48 = 0x45b0000000000000ull;
|
||||
// block_pos = 0;
|
||||
// voodoo_get_depth = &code_block[block_pos];
|
||||
#if 0
|
||||
*(uint64_t *)&const_1_48 = 0x45b0000000000000ull;
|
||||
block_pos = 0;
|
||||
voodoo_get_depth = &code_block[block_pos];
|
||||
#endif
|
||||
/*W at (%esp+4)
|
||||
Z at (%esp+12)
|
||||
new_depth at (%esp+16)*/
|
||||
// if ((params->fbzMode & FBZ_DEPTH_ENABLE) && (depth_op == DEPTHOP_NEVER))
|
||||
// {
|
||||
// addbyte(0xC3); /*RET*/
|
||||
// return;
|
||||
// }
|
||||
#if 0
|
||||
if ((params->fbzMode & FBZ_DEPTH_ENABLE) && (depth_op == DEPTHOP_NEVER)) {
|
||||
addbyte(0xC3); /*RET*/
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
addbyte(0x55); /*PUSH RBP*/
|
||||
addbyte(0x57); /*PUSH RDI*/
|
||||
addbyte(0x56); /*PUSH RSI*/
|
||||
@@ -796,7 +805,9 @@ voodoo_generate(uint8_t *code_block, voodoo_t *voodoo, voodoo_params_t *params,
|
||||
addbyte(0x75); /*JNZ got_depth*/
|
||||
depth_jump_pos = block_pos;
|
||||
addbyte(0);
|
||||
// addbyte(4+5+2+3+2+5+5+3+2+2+2+/*3+*/3+2+6+4+5+2+3);
|
||||
#if 0
|
||||
addbyte(4+5+2+3+2+5+5+3+2+2+2+/*3+*/3+2+6+4+5+2+3);
|
||||
#endif
|
||||
addbyte(0x8b); /*MOV EDX, w*/
|
||||
addbyte(0x97);
|
||||
addlong(offsetof(voodoo_state_t, w));
|
||||
@@ -810,7 +821,9 @@ voodoo_generate(uint8_t *code_block, voodoo_t *voodoo, voodoo_params_t *params,
|
||||
addbyte(0x74); /*JZ got_depth*/
|
||||
depth_jump_pos2 = block_pos;
|
||||
addbyte(0);
|
||||
// addbyte(5+5+3+2+2+2+/*3+*/3+2+6+4+5+2+3);
|
||||
#if 0
|
||||
addbyte(5+5+3+2+2+2+/*3+*/3+2+6+4+5+2+3);
|
||||
#endif
|
||||
addbyte(0xb9); /*MOV ECX, 19*/
|
||||
addlong(19);
|
||||
addbyte(0x0f); /*BSR EAX, EDX*/
|
||||
@@ -2224,10 +2237,12 @@ voodoo_generate(uint8_t *code_block, voodoo_t *voodoo, voodoo_params_t *params,
|
||||
addbyte(10);
|
||||
addbyte(0x01); /*ADD EAX, EBX*/
|
||||
addbyte(0xd8);
|
||||
/* int fog_idx = (w_depth >> 10) & 0x3f;
|
||||
#if 0
|
||||
int fog_idx = (w_depth >> 10) & 0x3f;
|
||||
|
||||
fog_a = params->fogTable[fog_idx].fog;
|
||||
fog_a += (params->fogTable[fog_idx].dfog * ((w_depth >> 2) & 0xff)) >> 10;*/
|
||||
fog_a = params->fogTable[fog_idx].fog;
|
||||
fog_a += (params->fogTable[fog_idx].dfog * ((w_depth >> 2) & 0xff)) >> 10;
|
||||
#endif
|
||||
break;
|
||||
|
||||
case FOG_Z:
|
||||
@@ -2239,7 +2254,9 @@ voodoo_generate(uint8_t *code_block, voodoo_t *voodoo, voodoo_params_t *params,
|
||||
addbyte(12);
|
||||
addbyte(0x25); /*AND EAX, 0xff*/
|
||||
addlong(0xff);
|
||||
// fog_a = (z >> 20) & 0xff;
|
||||
#if 0
|
||||
fog_a = (z >> 20) & 0xff;
|
||||
#endif
|
||||
break;
|
||||
|
||||
case FOG_ALPHA:
|
||||
@@ -2261,7 +2278,9 @@ voodoo_generate(uint8_t *code_block, voodoo_t *voodoo, voodoo_params_t *params,
|
||||
addbyte(0x0f); /*CMOVAE EAX, EBX*/
|
||||
addbyte(0x43);
|
||||
addbyte(0xc3);
|
||||
// fog_a = CLAMP(ia >> 12);
|
||||
#if 0
|
||||
fog_a = CLAMP(ia >> 12);
|
||||
#endif
|
||||
break;
|
||||
|
||||
case FOG_W:
|
||||
@@ -2282,7 +2301,9 @@ voodoo_generate(uint8_t *code_block, voodoo_t *voodoo, voodoo_params_t *params,
|
||||
addbyte(0x0f); /*CMOVAE EAX, EBX*/
|
||||
addbyte(0x43);
|
||||
addbyte(0xc3);
|
||||
// fog_a = CLAMP(w >> 32);
|
||||
#if 0
|
||||
fog_a = CLAMP(w >> 32);
|
||||
#endif
|
||||
break;
|
||||
}
|
||||
addbyte(0x01); /*ADD EAX, EAX*/
|
||||
@@ -3164,12 +3185,11 @@ int voodoo_recomp = 0;
|
||||
static inline void *
|
||||
voodoo_get_block(voodoo_t *voodoo, voodoo_params_t *params, voodoo_state_t *state, int odd_even)
|
||||
{
|
||||
int c;
|
||||
int b = last_block[odd_even];
|
||||
voodoo_x86_data_t *voodoo_x86_data = voodoo->codegen_data;
|
||||
voodoo_x86_data_t *data;
|
||||
|
||||
for (c = 0; c < 8; c++) {
|
||||
for (uint8_t c = 0; c < 8; c++) {
|
||||
data = &voodoo_x86_data[odd_even + c * 4]; //&voodoo_x86_data[odd_even][b];
|
||||
|
||||
if (state->xdir == data->xdir && params->alphaMode == data->alphaMode && params->fbzMode == data->fbzMode && params->fogMode == data->fogMode && params->fbzColorPath == data->fbzColorPath && (voodoo->trexInit1[0] & (1 << 18)) == data->trexInit1 && params->textureMode[0] == data->textureMode[0] && params->textureMode[1] == data->textureMode[1] && (params->tLOD[0] & LOD_MASK) == data->tLOD[0] && (params->tLOD[1] & LOD_MASK) == data->tLOD[1] && ((params->col_tiled || params->aux_tiled) ? 1 : 0) == data->is_tiled) {
|
||||
@@ -3181,7 +3201,9 @@ voodoo_get_block(voodoo_t *voodoo, voodoo_params_t *params, voodoo_state_t *stat
|
||||
}
|
||||
voodoo_recomp++;
|
||||
data = &voodoo_x86_data[odd_even + next_block_to_write[odd_even] * 4];
|
||||
// code_block = data->code_block;
|
||||
#if 0
|
||||
code_block = data->code_block;
|
||||
#endif
|
||||
|
||||
voodoo_generate(data->code_block, voodoo, params, state, depth_op);
|
||||
|
||||
@@ -3205,11 +3227,9 @@ voodoo_get_block(voodoo_t *voodoo, voodoo_params_t *params, voodoo_state_t *stat
|
||||
void
|
||||
voodoo_codegen_init(voodoo_t *voodoo)
|
||||
{
|
||||
int c;
|
||||
|
||||
voodoo->codegen_data = plat_mmap(sizeof(voodoo_x86_data_t) * BLOCK_NUM * 4, 1);
|
||||
|
||||
for (c = 0; c < 256; c++) {
|
||||
for (uint16_t c = 0; c < 256; c++) {
|
||||
int d[4];
|
||||
int _ds = c & 0xf;
|
||||
int dt = c >> 4;
|
||||
|
||||
Reference in New Issue
Block a user