xref: /openbsd-src/gnu/usr.bin/binutils/gdb/testsuite/gdb.base/overlays.c (revision b725ae7711052a2233e31a66fefb8a752c388d7a)
1*b725ae77Skettenis /* Support program for testing gdb's ability to debug overlays
2*b725ae77Skettenis    in the inferior.  */
3*b725ae77Skettenis 
4*b725ae77Skettenis #include "ovlymgr.h"
5*b725ae77Skettenis 
6*b725ae77Skettenis extern int foo PARAMS((int));
7*b725ae77Skettenis extern int bar PARAMS((int));
8*b725ae77Skettenis extern int baz PARAMS((int));
9*b725ae77Skettenis extern int grbx PARAMS((int));
10*b725ae77Skettenis 
main()11*b725ae77Skettenis int main ()
12*b725ae77Skettenis {
13*b725ae77Skettenis   int a, b, c, d, e;
14*b725ae77Skettenis 
15*b725ae77Skettenis   OverlayLoad (0);
16*b725ae77Skettenis   OverlayLoad (4);
17*b725ae77Skettenis   a = foo (1);
18*b725ae77Skettenis   OverlayLoad (1);
19*b725ae77Skettenis   OverlayLoad (5);
20*b725ae77Skettenis   b = bar (1);
21*b725ae77Skettenis   OverlayLoad (2);
22*b725ae77Skettenis   OverlayLoad (6);
23*b725ae77Skettenis   c = baz (1);
24*b725ae77Skettenis   OverlayLoad (3);
25*b725ae77Skettenis   OverlayLoad (7);
26*b725ae77Skettenis   d = grbx (1);
27*b725ae77Skettenis   e = a + b + c + d;
28*b725ae77Skettenis   return (e != ('f' + 'o' +'o'
29*b725ae77Skettenis 		+ 'b' + 'a' + 'r'
30*b725ae77Skettenis 		+ 'b' + 'a' + 'z'
31*b725ae77Skettenis 		+ 'g' + 'r' + 'b' + 'x'));
32*b725ae77Skettenis 
33*b725ae77Skettenis }
34*b725ae77Skettenis 
35