Skip to content

Commit 1aaad7e

Browse files
authored
Merge pull request #270 from sysprog21/utilize-bool
Convert int variables to bool type when possible
2 parents ee97fef + 27ef886 commit 1aaad7e

File tree

7 files changed

+144
-139
lines changed

7 files changed

+144
-139
lines changed

src/defs.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -350,7 +350,7 @@ typedef struct var_list {
350350
struct var {
351351
type_t *type;
352352
char var_name[MAX_VAR_LEN];
353-
int is_ptr;
353+
int ptr_level;
354354
bool is_func;
355355
bool is_global;
356356
int array_size;
@@ -439,7 +439,7 @@ struct type {
439439
/* lvalue details */
440440
typedef struct {
441441
int size;
442-
int is_ptr;
442+
int ptr_level;
443443
bool is_func;
444444
bool is_reference;
445445
type_t *type;

src/globals.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -584,8 +584,8 @@ void hashmap_free(hashmap_t *map)
584584

585585
/* options */
586586

587-
int dump_ir = 0;
588-
int hard_mul_div = 0;
587+
bool dump_ir = false;
588+
bool hard_mul_div = false;
589589

590590
/* Find the type by the given name.
591591
* @type_name: The name to be searched.
@@ -883,7 +883,7 @@ var_t *find_var(char *token, block_t *parent)
883883
int size_var(var_t *var)
884884
{
885885
int size;
886-
if (var->is_ptr > 0 || var->is_func) {
886+
if (var->ptr_level > 0 || var->is_func) {
887887
size = 4;
888888
} else {
889889
type_t *type = var->type;
@@ -1426,7 +1426,7 @@ void dump_bb_insn(func_t *func, basic_block_t *bb, bool *at_func_start)
14261426
print_indent(1);
14271427
printf("allocat %s", rd->type->type_name);
14281428

1429-
for (int i = 0; i < rd->is_ptr; i++)
1429+
for (int i = 0; i < rd->ptr_level; i++)
14301430
printf("*");
14311431

14321432
printf(" %%%s", rd->var_name);
@@ -1636,7 +1636,7 @@ void dump_insn(void)
16361636

16371637
printf("def %s", func->return_def.type->type_name);
16381638

1639-
for (int i = 0; i < func->return_def.is_ptr; i++)
1639+
for (int i = 0; i < func->return_def.ptr_level; i++)
16401640
printf("*");
16411641
printf(" @%s(", func->return_def.var_name);
16421642

@@ -1645,7 +1645,7 @@ void dump_insn(void)
16451645
printf(", ");
16461646
printf("%s", func->param_defs[i].type->type_name);
16471647

1648-
for (int k = 0; k < func->param_defs[i].is_ptr; k++)
1648+
for (int k = 0; k < func->param_defs[i].ptr_level; k++)
16491649
printf("*");
16501650
printf(" %%%s", func->param_defs[i].var_name);
16511651
}

src/main.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,16 +48,16 @@
4848

4949
int main(int argc, char *argv[])
5050
{
51-
int libc = 1;
51+
bool libc = true;
5252
char *out = NULL, *in = NULL;
5353

5454
for (int i = 1; i < argc; i++) {
5555
if (!strcmp(argv[i], "--dump-ir"))
56-
dump_ir = 1;
56+
dump_ir = true;
5757
else if (!strcmp(argv[i], "+m"))
58-
hard_mul_div = 1;
58+
hard_mul_div = true;
5959
else if (!strcmp(argv[i], "--no-libc"))
60-
libc = 0;
60+
libc = false;
6161
else if (!strcmp(argv[i], "-o")) {
6262
if (i + 1 < argc) {
6363
out = argv[i + 1];

0 commit comments

Comments
 (0)