1How to use SIS with GDB 2----------------------- 3 41. Building GDB with SIS 5 6To build GDB with the SIS/ERC32 simulator, configure with option 7'--target sparc-erc32-aout' and build as usual. 8 92. Attaching the simulator 10 11To attach GDB to the simulator, use: 12 13target sim [options] [files] 14 15The following options are supported: 16 17 -nfp Disable FPU. FPops will cause an FPU disabled trap. 18 19 -freq <f> Set the simulated "system clock" to <f> MHz. 20 21 -v Verbose mode. 22 23 -nogdb Disable GDB breakpoint handling (see below) 24 25The listed [files] are expected to be in aout format and will be 26loaded in the simulator memory prior. This could be used to load 27a boot block at address 0x0 if the application is linked to run 28from RAM (0x2000000). 29 30To start debugging a program type 'load <program>' and debug as 31usual. 32 33The native simulator commands can be reached using the GDB 'sim' 34command: 35 36sim <sis_command> 37 38Direct simulator commands during a GDB session must be issued 39with care not to disturb GDB's operation ... 40 41For info on supported ERC32 functionality, see README.sis. 42 43 443. Loading aout files 45 46The GDB load command loads an aout file into the simulator 47memory with the data section starting directly after the text 48section regardless of wich start address was specified for the data 49at link time! This means that your applications either has to include 50a routine that initialise the data segment at the proper address or 51link with the data placed directly after the text section. 52 53A copying routine is fairly simple, just copy all data between 54_etext and _data to a memory loaction starting at _environ. This 55should be done at the same time as the bss is cleared (in srt0.s). 56 57 584. GDB breakpoint handling 59 60GDB inserts breakpoint in the form of the 'ta 1' instruction. The 61GDB-integrated simulator will therefore recognize the breakpoint 62instruction and return control to GDB. If the application uses 63'ta 1', the breakpoint detection can be disabled with the -nogdb 64switch. In this case however, GDB breakpoints will not work. 65 66 67Report problems to Jiri Gaisler ESA/ESTEC (jgais@wd.estec.esa.nl) 68