Created
October 17, 2022 15:19
-
-
Save joaobispo/f01f04466d021a167e7dedda09ec9ffb to your computer and use it in GitHub Desktop.
Code for testing inlining - After
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
void funA(int x, int *X, int *Y) { | |
{ | |
int i; | |
i = 0; | |
bool decomp_0; | |
decomp_0 = i < 100; | |
while(decomp_0) { | |
X[i] = Y[i] * x; | |
i++; | |
decomp_0 = i < 100; | |
} | |
} | |
} | |
int funD(int x) { | |
return x * x * x; | |
} | |
int funB(int *X, int *Y) { | |
{ | |
int i; | |
i = 0; | |
bool decomp_1; | |
decomp_1 = i < 100; | |
while(decomp_1) { | |
X[i] = X[i] * Y[i]; | |
i++; | |
decomp_1 = i < 100; | |
} | |
} | |
{ | |
int i; | |
i = 0; | |
bool decomp_2; | |
decomp_2 = i < 100; | |
while(decomp_2) { | |
Y[i] = X[i] + Y[i]; | |
Y[i] = funD(Y[i]); | |
i++; | |
decomp_2 = i < 100; | |
} | |
} | |
{ | |
int i; | |
i = 0; | |
bool decomp_3; | |
decomp_3 = i < 100; | |
while(decomp_3) { | |
Y[i] = X[i] * Y[i]; | |
Y[i] = funD(Y[i]); | |
i++; | |
decomp_3 = i < 100; | |
} | |
} | |
return X[0] + Y[0]; | |
} | |
int funC(int x, int y, int *X) { | |
funB(X, X); | |
return funD(x) + funD(y) + X[6]; | |
} | |
int main() { | |
int A[100]; | |
A = {1}; | |
int B[100]; | |
B = {2}; | |
int C[100]; | |
C = {3}; | |
{ | |
int __inline_0_x; | |
__inline_0_x = 500; | |
int *__inline_0_X; | |
__inline_0_X = A; | |
int *__inline_0_Y; | |
__inline_0_Y = B; | |
{ | |
int __inline_0_i; | |
__inline_0_i = 0; | |
bool __inline_0_decomp_0; | |
__inline_0_decomp_0 = __inline_0_i < 100; | |
while(__inline_0_decomp_0) { | |
__inline_0_X[__inline_0_i] = __inline_0_Y[__inline_0_i] * __inline_0_x; | |
__inline_0_i++; | |
__inline_0_decomp_0 = __inline_0_i < 100; | |
} | |
} | |
} | |
int x; | |
{ | |
int *__inline_0_X; | |
__inline_0_X = B; | |
int *__inline_0_Y; | |
__inline_0_Y = C; | |
{ | |
int __inline_0_i; | |
__inline_0_i = 0; | |
bool __inline_0_decomp_1; | |
__inline_0_decomp_1 = __inline_0_i < 100; | |
while(__inline_0_decomp_1) { | |
__inline_0_X[__inline_0_i] = __inline_0_X[__inline_0_i] * __inline_0_Y[__inline_0_i]; | |
__inline_0_i++; | |
__inline_0_decomp_1 = __inline_0_i < 100; | |
} | |
} | |
{ | |
int __inline_0_i; | |
__inline_0_i = 0; | |
bool __inline_0_decomp_2; | |
__inline_0_decomp_2 = __inline_0_i < 100; | |
while(__inline_0_decomp_2) { | |
__inline_0_Y[__inline_0_i] = __inline_0_X[__inline_0_i] + __inline_0_Y[__inline_0_i]; | |
__inline_0_Y[__inline_0_i] = funD(__inline_0_Y[__inline_0_i]); | |
__inline_0_i++; | |
__inline_0_decomp_2 = __inline_0_i < 100; | |
} | |
} | |
{ | |
int __inline_0_i; | |
__inline_0_i = 0; | |
bool __inline_0_decomp_3; | |
__inline_0_decomp_3 = __inline_0_i < 100; | |
while(__inline_0_decomp_3) { | |
__inline_0_Y[__inline_0_i] = __inline_0_X[__inline_0_i] * __inline_0_Y[__inline_0_i]; | |
__inline_0_Y[__inline_0_i] = funD(__inline_0_Y[__inline_0_i]); | |
__inline_0_i++; | |
__inline_0_decomp_3 = __inline_0_i < 100; | |
} | |
} | |
x = __inline_0_X[0] + __inline_0_Y[0]; | |
} | |
{ | |
int i; | |
i = 0; | |
bool decomp_5; | |
decomp_5 = i < 100; | |
while(decomp_5) { | |
{ | |
int j; | |
j = 0; | |
bool decomp_4; | |
decomp_4 = j < 100; | |
while(decomp_4) { | |
int y; | |
y = x + A[0]; | |
{ | |
int __inline_0_x; | |
__inline_0_x = x; | |
int __inline_0_y; | |
__inline_0_y = y; | |
int *__inline_0_X; | |
__inline_0_X = C; | |
funB(__inline_0_X, __inline_0_X); | |
} | |
{ | |
int __inline_0_x; | |
__inline_0_x = y; | |
int __inline_0_y; | |
__inline_0_y = x; | |
int *__inline_0_X; | |
__inline_0_X = C; | |
funB(__inline_0_X, __inline_0_X); | |
} | |
j++; | |
decomp_4 = j < 100; | |
} | |
} | |
i++; | |
decomp_5 = i < 100; | |
} | |
} | |
int sumA; | |
sumA = 0; | |
int sumB; | |
sumB = 0; | |
int sumC; | |
sumC = 0; | |
{ | |
int i; | |
i = 0; | |
bool decomp_6; | |
decomp_6 = i < 100; | |
while(decomp_6) { | |
sumA = sumA + A[i]; | |
sumB = sumB + B[i]; | |
sumC = sumC + C[i]; | |
i++; | |
decomp_6 = i < 100; | |
} | |
} | |
{ | |
char const *__inline_0___format; | |
__inline_0___format = "A: %d, B: %d, C: %d, x: %d\n"; | |
} | |
return A[2]; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment