mirror of
https://github.com/DarkPlacesEngine/gmqcc.git
synced 2024-11-23 20:33:05 +00:00
Remove a ton of dead code and document the one really insane case.
This commit is contained in:
parent
684112474b
commit
ce23e95d0b
3 changed files with 25 additions and 5 deletions
6
ast.c
6
ast.c
|
@ -2934,9 +2934,13 @@ bool ast_loop_codegen(ast_loop *self, ast_function *func, bool lvalue, ir_value
|
||||||
{
|
{
|
||||||
ir_block *ontrue, *onfalse;
|
ir_block *ontrue, *onfalse;
|
||||||
if (bprecond) ontrue = bprecond;
|
if (bprecond) ontrue = bprecond;
|
||||||
else if (bbody) ontrue = bbody;
|
else ontrue = bbody; /* can never be null */
|
||||||
|
|
||||||
|
/* all of this is dead code
|
||||||
else if (bincrement) ontrue = bincrement;
|
else if (bincrement) ontrue = bincrement;
|
||||||
else ontrue = bpostcond;
|
else ontrue = bpostcond;
|
||||||
|
*/
|
||||||
|
|
||||||
onfalse = bout;
|
onfalse = bout;
|
||||||
if (self->post_not) {
|
if (self->post_not) {
|
||||||
tmpblock = ontrue;
|
tmpblock = ontrue;
|
||||||
|
|
21
ir.c
21
ir.c
|
@ -1800,14 +1800,33 @@ ir_value* ir_block_create_binop(ir_block *self, lex_ctx ctx,
|
||||||
ot = TYPE_POINTER;
|
ot = TYPE_POINTER;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
/*
|
||||||
|
* after the following default case, the value of opcode can never
|
||||||
|
* be 1, 2, 3, 4, 5, 6, 7, 8, 9, 62, 63, 64, 65
|
||||||
|
*/
|
||||||
default:
|
default:
|
||||||
/* ranges: */
|
/* ranges: */
|
||||||
/* boolean operations result in floats */
|
/* boolean operations result in floats */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* opcode >= 10 takes true branch opcode is at least 10
|
||||||
|
* opcode <= 23 takes false branch opcode is at least 24
|
||||||
|
*/
|
||||||
if (opcode >= INSTR_EQ_F && opcode <= INSTR_GT)
|
if (opcode >= INSTR_EQ_F && opcode <= INSTR_GT)
|
||||||
ot = TYPE_FLOAT;
|
ot = TYPE_FLOAT;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* At condition "opcode <= 23", the value of "opcode" must be
|
||||||
|
* at least 24.
|
||||||
|
* At condition "opcode <= 23", the value of "opcode" cannot be
|
||||||
|
* equal to any of {1, 2, 3, 4, 5, 6, 7, 8, 9, 62, 63, 64, 65}.
|
||||||
|
* The condition "opcode <= 23" cannot be true.
|
||||||
|
*
|
||||||
|
* Thus ot=2 (TYPE_FLOAT) can never be true
|
||||||
|
*/
|
||||||
|
#if 0
|
||||||
else if (opcode >= INSTR_LE && opcode <= INSTR_GT)
|
else if (opcode >= INSTR_LE && opcode <= INSTR_GT)
|
||||||
ot = TYPE_FLOAT;
|
ot = TYPE_FLOAT;
|
||||||
#if 0
|
|
||||||
else if (opcode >= INSTR_LE_I && opcode <= INSTR_EQ_FI)
|
else if (opcode >= INSTR_LE_I && opcode <= INSTR_EQ_FI)
|
||||||
ot = TYPE_FLOAT;
|
ot = TYPE_FLOAT;
|
||||||
#endif
|
#endif
|
||||||
|
|
3
main.c
3
main.c
|
@ -697,9 +697,6 @@ int main(int argc, char **argv) {
|
||||||
mem_d(line);
|
mem_d(line);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (retval)
|
|
||||||
goto cleanup;
|
|
||||||
|
|
||||||
if (vec_size(items)) {
|
if (vec_size(items)) {
|
||||||
if (!OPTS_OPTION_BOOL(OPTION_QUIET) &&
|
if (!OPTS_OPTION_BOOL(OPTION_QUIET) &&
|
||||||
!OPTS_OPTION_BOOL(OPTION_PP_ONLY))
|
!OPTS_OPTION_BOOL(OPTION_PP_ONLY))
|
||||||
|
|
Loading…
Reference in a new issue