diff --git a/gdb/testsuite/gdb.base/smoke.c b/gdb/testsuite/gdb.base/smoke.c new file mode 100644 index 0000000000..69d34c9790 --- /dev/null +++ b/gdb/testsuite/gdb.base/smoke.c @@ -0,0 +1,40 @@ +/* Test various kinds of stepping. +*/ +int glob = 0; + +int callee() { + glob++; + return (0); +} + +int main () { + int w,x,y,z; + int a[10], b[10]; + + /* Test "next" and "step" */ + w = 0; + x = 1; + y = 2; + z = 3; + w = w + 2; + x = x + 3; + y = y + 4; + z = z + 5; + + /* Test that "next" goes over a call */ + callee(); /* OVER */ + + /* Test that "step" doesn't */ + callee(); /* INTO */ + + /* Test "stepi" */ + a[5] = a[3] - a[4]; + callee(); /* STEPI */ + + /* Test "nexti" */ + callee(); /* NEXTI */ + + y = w + z; + + return (0); +}