-
Notifications
You must be signed in to change notification settings - Fork 43
Add plug point for treating arguments as locals #315
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
See the diff generated by this PR for the tests here: https://github.com/lifting-bits/rellic/actions/runs/3836932737 fizzbuzz.bc--- /dev/fd/63 2023-01-04 09:58:05.445872322 +0000
+++ /dev/fd/62 2023-01-04 09:58:05.445872322 +0000
@@ -11,15 +11,14 @@
var1 = 0U;
while ((int)var1 < 30)
{
- if ((int)var1 % 3 != 0U || !((int)var1 % 5 == 0U || (int)var1 % 3 != 0U)) {
- if ((int)var1 % 3 != 0U && ((int)var1 % 3 != 0U || (int)var1 % 5 != 0U)) {
+ if (!((int)var1 % 3 != 0U || (int)var1 % 5 == 0U) || (int)var1 % 3 != 0U) {
+ if ((int)var1 % 3 != 0U) {
if ((int)var1 % 5 != 0U) {
printf("%d\n", var1);
} else {
printf("buzz\n");
}
- }
- if ((int)var1 % 3 == 0U && ((int)var1 % 3 != 0U || (int)var1 % 5 != 0U)) {
+ } else {
printf("fizz\n");
}
} else {typedefs_of_typedefs.bcswitch_loop.bcfunc_cond_zero_arg.bcfcmp.bcconflicting_names.bcstruct.bcissue_183_literal_structs.bczeroinit.bcstruct_swap.bcinit_list.bcret0.bcbool.bcbitops.bccast.bcnullptr.bcconflicting_global.bcarray_swap.bcbitmask.bcbinops.bcfloat.bcreg_test_structure_fields.bcvectors.bcfuncptr.bcgoto_loop.bcshort.bctrunc.bcinttoptr.bcissue_4.bcissue_127_uint128_t_lit.bcissue_123_uint128_t.bcfizzbuzz_stateful.bcissue_94_strncmp.bcnested_struct.bcglobal_using_function_decl.bcbyval_struct.bcnested_while.bcfunc_cond_two_arg.bczext.bcassert.bcloop.bcswitch.bcbranch.bctemplate_parameter_pack.bcbyval_tail_nogep.llbyval_tail_gep.ll |
|
See the diff generated by this PR for the tests here: https://github.com/lifting-bits/rellic/actions/runs/3987629702 fizzbuzz.bctypedefs_of_typedefs.bcswitch_loop.bcfunc_cond_zero_arg.bcfcmp.bcconflicting_names.bcstruct.bcissue_183_literal_structs.bczeroinit.bcglobal_using_function_decl.bcinit_list.bcret0.bcgoto_loop.bcbool.bcbitops.bccast.bcnullptr.bcconflicting_global.bcarray_swap.bcbitmask.bcbinops.bcfloat.bcreg_test_structure_fields.bcvectors.bcfuncptr.bcstruct_swap.bcshort.bctrunc.bcinttoptr.bcissue_4.bcissue_127_uint128_t_lit.bcissue_123_uint128_t.bcfizzbuzz_stateful.bcissue_94_strncmp.bcnested_struct.bczext.bcbyval_struct.bcnested_while.bc--- /dev/fd/63 2023-01-23 15:07:11.963468951 +0000
+++ /dev/fd/62 2023-01-23 15:07:11.963468951 +0000
@@ -25,7 +25,7 @@
printf("loop2 x: %d\n", var1);
}
}
- if (((int)var1 >= 20 || (int)var1 <= 10) && (int)var1 >= 20) {
+ if ((int)var1 >= 20 && ((int)var1 >= 20 || (int)var1 <= 10)) {
return var0;
}
}func_cond_two_arg.bcassert.bcloop.bcswitch.bcbranch.bctemplate_parameter_pack.bcbyval_tail_gep.llbyval_tail_nogep.ll |
4efc2a9 to
a78a14a
Compare
|
See the diff generated by this PR for the tests here: https://github.com/lifting-bits/rellic/actions/runs/4007072893 fizzbuzz.bctypedefs_of_typedefs.bcswitch_loop.bcfunc_cond_zero_arg.bcfcmp.bcconflicting_names.bcstruct.bcissue_183_literal_structs.bczeroinit.bcglobal_using_function_decl.bcinit_list.bcret0.bcgoto_loop.bcbool.bcbitops.bccast.bcnullptr.bcconflicting_global.bcarray_swap.bcbitmask.bcbinops.bcfloat.bcreg_test_structure_fields.bcvectors.bcfuncptr.bcstruct_swap.bcshort.bctrunc.bcinttoptr.bcissue_4.bcissue_127_uint128_t_lit.bcissue_123_uint128_t.bcfizzbuzz_stateful.bcissue_94_strncmp.bcnested_struct.bczext.bcbyval_struct.bcnested_while.bcfunc_cond_two_arg.bcassert.bcloop.bcswitch.bcbranch.bctemplate_parameter_pack.bcbyval_tail_gep.llbyval_tail_nogep.ll |
|
See the diff generated by this PR for the tests here: https://github.com/lifting-bits/rellic/actions/runs/4015340181 fizzbuzz.bctypedefs_of_typedefs.bcswitch_loop.bcfunc_cond_zero_arg.bcfcmp.bcconflicting_names.bcstruct.bcissue_183_literal_structs.bczeroinit.bcglobal_using_function_decl.bcinit_list.bcret0.bcgoto_loop.bcbool.bcbitops.bccast.bcnullptr.bcconflicting_global.bcarray_swap.bcbitmask.bcbinops.bcfloat.bcreg_test_structure_fields.bcvectors.bcfuncptr.bcstruct_swap.bcshort.bctrunc.bcinttoptr.bcissue_4.bcissue_127_uint128_t_lit.bcissue_123_uint128_t.bcfizzbuzz_stateful.bcissue_94_strncmp.bcnested_struct.bczext.bcbyval_struct.bcnested_while.bc--- /dev/fd/63 2023-01-26 13:04:54.503194856 +0000
+++ /dev/fd/62 2023-01-26 13:04:54.503194856 +0000
@@ -25,7 +25,7 @@
printf("loop2 x: %d\n", var1);
}
}
- if (((int)var1 >= 20 || (int)var1 <= 10) && (int)var1 >= 20) {
+ if ((int)var1 >= 20 && ((int)var1 >= 20 || (int)var1 <= 10)) {
return var0;
}
}func_cond_two_arg.bcassert.bcloop.bcswitch.bcbranch.bctemplate_parameter_pack.bcbyval_tail_gep.llbyval_tail_nogep.ll |
|
See the diff generated by this PR for the tests here: https://github.com/lifting-bits/rellic/actions/runs/4015452164 fizzbuzz.bctypedefs_of_typedefs.bcswitch_loop.bcfunc_cond_zero_arg.bcfcmp.bcconflicting_names.bcstruct.bcissue_183_literal_structs.bczeroinit.bcglobal_using_function_decl.bcinit_list.bcret0.bcgoto_loop.bcbool.bcbitops.bccast.bcnullptr.bcconflicting_global.bcarray_swap.bcbitmask.bcbinops.bcfloat.bcreg_test_structure_fields.bcvectors.bcfuncptr.bcstruct_swap.bcshort.bctrunc.bcinttoptr.bcissue_4.bcissue_127_uint128_t_lit.bcissue_123_uint128_t.bcfizzbuzz_stateful.bcissue_94_strncmp.bcnested_struct.bczext.bcbyval_struct.bcnested_while.bcfunc_cond_two_arg.bcassert.bcloop.bcswitch.bcbranch.bctemplate_parameter_pack.bcbyval_tail_gep.llbyval_tail_nogep.ll |
|
See the diff generated by this PR for the tests here: https://github.com/lifting-bits/rellic/actions/runs/4105996780 fizzbuzz.bctypedefs_of_typedefs.bcswitch_loop.bcfunc_cond_zero_arg.bcfcmp.bcconflicting_names.bcstruct.bcissue_183_literal_structs.bczeroinit.bcglobal_using_function_decl.bcinit_list.bcret0.bcgoto_loop.bcbool.bcbitops.bccast.bcnullptr.bcconflicting_global.bcarray_swap.bcbitmask.bcbinops.bcfloat.bcreg_test_structure_fields.bcvectors.bcfuncptr.bcstruct_swap.bcshort.bctrunc.bcinttoptr.bcissue_4.bcissue_127_uint128_t_lit.bcissue_123_uint128_t.bcfizzbuzz_stateful.bcissue_94_strncmp.bcnested_struct.bczext.bcbyval_struct.bcnested_while.bc--- /dev/fd/63 2023-02-06 17:11:06.315041757 +0000
+++ /dev/fd/62 2023-02-06 17:11:06.315041757 +0000
@@ -25,7 +25,7 @@
printf("loop2 x: %d\n", var1);
}
}
- if ((int)var1 >= 20 && ((int)var1 >= 20 || (int)var1 <= 10)) {
+ if (((int)var1 >= 20 || (int)var1 <= 10) && (int)var1 >= 20) {
return var0;
}
}func_cond_two_arg.bcassert.bcloop.bcswitch.bcbranch.bctemplate_parameter_pack.bcbyval_tail_gep.llbyval_tail_nogep.ll |
760985f to
5a342a1
Compare
|
See the diff generated by this PR for the tests here: https://github.com/lifting-bits/rellic/actions/runs/4244868052 fizzbuzz.bctypedefs_of_typedefs.bcswitch_loop.bcfunc_cond_zero_arg.bcconflicting_names.bcstruct.bcissue_183_literal_structs.bcstruct_swap.bcshort.bcinit_list.bcret0.bcgoto_loop.bcbool.bcbitops.bccast.bcnullptr.bcnested_struct.bcarray_swap.bcbitmask.bcbinops.bcfloat.bcreg_test_structure_fields.bczeroinit.bcconflicting_global.bcinttoptr.bcbranch.bcfuncptr.bctrunc.bcvectors.bcissue_4.bcissue_127_uint128_t_lit.bcissue_123_uint128_t.bcfizzbuzz_stateful.bcissue_94_strncmp.bcglobal_using_function_decl.bcfcmp.bcbyval_struct.bcnested_while.bcfunc_cond_two_arg.bczext.bcassert.bcloop.bcswitch.bctemplate_parameter_pack.bcbyval_tail_nogep.llbyval_tail_gep.ll |
5a342a1 to
a86c8b7
Compare
* use zero for undef floats * fix format
|
See the diff generated by this PR for the tests here: https://github.com/lifting-bits/rellic/actions/runs/5475823810 fizzbuzz.bctypedefs_of_typedefs.bcswitch_loop.bcfunc_cond_zero_arg.bcfcmp.bcconflicting_names.bcstruct.bcissue_183_literal_structs.bcinit_list.bcret0.bcgoto_loop.bcbool.bcshort.bccast.bcnullptr.bcconflicting_global.bcarray_swap.bcbitmask.bcbinops.bcfloat.bcreg_test_structure_fields.bcnested_while.bczeroinit.bcfuncptr.bcstruct_swap.bcbranch.bcvectors.bcbitops.bctrunc.bcinttoptr.bcissue_4.bcissue_127_uint128_t_lit.bcissue_123_uint128_t.bcfizzbuzz_stateful.bcissue_94_strncmp.bcnested_struct.bcglobal_using_function_decl.bcbyval_struct.bcfunc_cond_two_arg.bczext.bcassert.bcloop.bcswitch.bctemplate_parameter_pack.bcbyval_tail_nogep.llbyval_tail_gep.ll |
* llvm 17 fixes * Update CI --------- Co-authored-by: Francesco Bertolaccini <[email protected]>
Also additional method for changing variable type for
allocas