CSE 141 x86 assembly samples
Code Snippet
Source File
Assembly Code
arrayLoop.c
arrayLoop.s
arrayLoop-opt1.s
arrayLoop-opt4.s
arrayLoop2.c
arrayLoop2.s
arrayLoop2-opt1.s
arrayLoop2-opt4.s
nestLoop.c
nestLoop.s
nestLoop-opt1.s
nestLoop-opt4.s
nestLoop2.c
nestLoop2.s
nestLoop2-opt1.s
nestLoop2-opt4.s
simpleLoop.c
simpleLoop.s
simpleLoop-opt1.s
simpleLoop-opt4.s
string.c
string.s
string-opt1.s
string-opt4.s
struct.c
struct.s
struct-opt1.s
struct-opt4.s
switch.c
switch.s
switch-opt1.s
switch-opt4.s
switch2.c
switch2.s
switch2-opt1.s
switch2-opt4.s
switch3.c
switch3.s
switch3-opt1.s
switch3-opt4.s
a = b + c;
1.c
1.s
1-opt1.s
1-opt4.s
a = b + c + d;
2.c
2.s
2-opt1.s
2-opt4.s
a = b & c;
3.c
3.s
3-opt1.s
3-opt4.s
a = b + 4;
4.c
4.s
4-opt1.s
4-opt4.s
a = b - (c * (d/2) - 4);
5.c
5.s
5-opt1.s
5-opt4.s
if (a) b = c;
6.c
6.s
6-opt1.s
6-opt4.s
if (a == 4) b = c;
7.c
7.s
7-opt1.s
7-opt4.s
while (a != 0) a--;
8.c
8.s
8-opt1.s
8-opt4.s
a = 0xDEADBEEF;
9.c
9.s
9-opt1.s
9-opt4.s
a = foo[4];
10.c
10.s
10-opt1.s
10-opt4.s
foo[4] = a;
11.c
11.s
11-opt1.s
11-opt4.s
a = a + b + c + d +... +z;
13.c
13.s
13-opt1.s
13-opt4.s
for(i = 0; i < 10; i++) {sum+=i;}
14.c
14.s
14-opt1.s
14-opt4.s
a = foo(b);
15.c
15.s
15-opt1.s
15-opt4.s
struct Foo{
int a;
int b;
};
Foo test;
test.a = 1;
test.b = 2;
16.c
16.s
16-opt1.s
16-opt4.s