1*b725ae77Skettenis .include "common.inc" 2*b725ae77Skettenis .include "arch.inc" 3*b725ae77Skettenis 4*b725ae77Sketteniscomment "WARNING: asm-source.exp checks for line numbers printed by gdb." 5*b725ae77Sketteniscomment "Be careful about changing this file without also changing" 6*b725ae77Sketteniscomment "asm-source.exp." 7*b725ae77Skettenis 8*b725ae77Skettenis 9*b725ae77Sketteniscomment "This file is not linked with crt0." 10*b725ae77Sketteniscomment "Provide very simplistic equivalent." 11*b725ae77Skettenis 12*b725ae77Skettenis .global _start 13*b725ae77Skettenisgdbasm_declare _start 14*b725ae77Skettenis gdbasm_startup 15*b725ae77Skettenis gdbasm_call main 16*b725ae77Skettenis gdbasm_exit0 17*b725ae77Skettenis gdbasm_end _start 18*b725ae77Skettenis 19*b725ae77Sketteniscomment "main routine for assembly source debugging test" 20*b725ae77Sketteniscomment "This particular testcase uses macros in <arch>.inc to achieve" 21*b725ae77Sketteniscomment "machine independence." 22*b725ae77Skettenis 23*b725ae77Skettenis .global main 24*b725ae77Skettenisgdbasm_declare main 25*b725ae77Skettenis gdbasm_enter 26*b725ae77Skettenis 27*b725ae77Sketteniscomment "Call a macro that consists of several lines of assembler code." 28*b725ae77Skettenis 29*b725ae77Skettenis gdbasm_several_nops 30*b725ae77Skettenis 31*b725ae77Sketteniscomment "Call a subroutine in another file." 32*b725ae77Skettenis 33*b725ae77Skettenis gdbasm_call foo2 34*b725ae77Skettenis 35*b725ae77Sketteniscomment "All done." 36*b725ae77Skettenis 37*b725ae77Skettenis gdbasm_exit0 38*b725ae77Skettenis gdbasm_end main 39*b725ae77Skettenis 40*b725ae77Sketteniscomment "A routine for foo2 to call." 41*b725ae77Skettenis 42*b725ae77Skettenis .global foo3 43*b725ae77Skettenisgdbasm_declare foo3 44*b725ae77Skettenis gdbasm_enter 45*b725ae77Skettenis gdbasm_leave 46*b725ae77Skettenis gdbasm_end foo3 47*b725ae77Skettenis 48*b725ae77Skettenis .global exit 49*b725ae77Skettenisgdbasm_declare exit 50*b725ae77Skettenis gdbasm_exit0 51*b725ae77Skettenis gdbasm_end exit 52*b725ae77Skettenis 53*b725ae77Sketteniscomment "A static function" 54*b725ae77Skettenis 55*b725ae77Skettenisgdbasm_declare foostatic 56*b725ae77Skettenis gdbasm_enter 57*b725ae77Skettenis gdbasm_leave 58*b725ae77Skettenis gdbasm_end foostatic 59*b725ae77Skettenis 60*b725ae77Sketteniscomment "A global variable" 61*b725ae77Skettenis 62*b725ae77Skettenis .global globalvar 63*b725ae77Skettenisgdbasm_datavar globalvar 11 64*b725ae77Skettenis 65*b725ae77Sketteniscomment "A static variable" 66*b725ae77Skettenis 67*b725ae77Skettenisgdbasm_datavar staticvar 5 68*b725ae77Skettenis 69*b725ae77Skettenis .include "note.inc" 70