summaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base/smoke.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.base/smoke.c')
-rw-r--r--gdb/testsuite/gdb.base/smoke.c40
1 files changed, 40 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/smoke.c b/gdb/testsuite/gdb.base/smoke.c
new file mode 100644
index 00000000000..69d34c9790f
--- /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);
+}