Mail Archives: djgpp-workers/2001/01/07/04:53:59
> ? If so, then isn't it better to convert all backslashes to forward
> slashes in debug info? I think GDB might puke on backslashes, because
> the format spec for debug info calls for forward slashes.
You're probably right. As you can see below, all references, except the
.file directive are already slash-flipped. I'm pretty sure gdb currently
handles this correctly (though that may be something I patched in mine).
== spawnv.s, resulting from gcc -gstabs+3 -S
.file "H:\\Tmp\\Source\\djgpp-cvs\\src\\libc\\dos\\process\\spawnv.c"
gcc2_compiled.:
___gnu_compiled_c:
.stabs "h:/Tmp/Source/djgpp-cvs/src/libc/dos/process/",100,0,0,Ltext0
.stabs "H:\\Tmp\\Source\\djgpp-cvs\\src\\libc\\dos\\process\\spawnv.c",100,0,0,Ltext0
.text
Ltext0:
.stabs "int:t(0,1)=r(0,1);0020000000000;0017777777777;",128,0,0,0
.stabs "char:t(0,2)=r(0,2);0;127;",128,0,0,0
.stabs "long int:t(0,3)=r(0,1);0020000000000;0017777777777;",128,0,0,0
.stabs "unsigned int:t(0,4)=r(0,1);0000000000000;0037777777777;",128,0,0,0
.stabs "long unsigned int:t(0,5)=r(0,1);0000000000000;0037777777777;",128,0,0,0
.stabs "long long int:t(0,6)=r(0,1);01000000000000000000000;0777777777777777777777;",128,0,0,0
.stabs "long long unsigned int:t(0,7)=r(0,1);0000000000000;01777777777777777777777;",128,0,0,0
.stabs "short int:t(0,8)=r(0,8);-32768;32767;",128,0,0,0
.stabs "short unsigned int:t(0,9)=r(0,9);0;65535;",128,0,0,0
.stabs "signed char:t(0,10)=r(0,10);-128;127;",128,0,0,0
.stabs "unsigned char:t(0,11)=r(0,11);0;255;",128,0,0,0
.stabs "float:t(0,12)=r(0,1);4;0;",128,0,0,0
.stabs "double:t(0,13)=r(0,1);8;0;",128,0,0,0
.stabs "long double:t(0,14)=r(0,1);12;0;",128,0,0,0
.stabs "complex int:t(0,15)=s8real:(0,1),0,32;imag:(0,1),32,32;;",128,0,0,0
.stabs "complex float:t(0,16)=r(0,16);4;0;",128,0,0,0
.stabs "complex double:t(0,17)=r(0,17);8;0;",128,0,0,0
.stabs "complex long double:t(0,18)=r(0,18);12;0;",128,0,0,0
.stabs "void:t(0,19)=(0,19)",128,0,0,0
.stabs "G:/Djgpp/include/libc/stubs.h",130,0,0,0
.stabn 162,0,0,0
.stabs "G:/Djgpp/include/process.h",130,0,0,0
.stabn 162,0,0,0
.p2align 2
.stabs "spawnv:F(0,1)",36,0,8,_spawnv
.stabs "mode:p(0,1)",160,0,7,8
.stabs "path:p(0,20)=*(0,2)",160,0,7,12
.stabs "argv:p(0,21)=*(0,22)=*(0,2)",160,0,7,16
.globl _spawnv
_spawnv:
.stabn 68,0,8,LM1-_spawnv
LM1:
pushl %ebp
movl %esp,%ebp
subl $8,%esp
.stabn 68,0,9,LM2-_spawnv
LM2:
movl _environ,%eax
pushl %eax
movl 16(%ebp),%eax
pushl %eax
movl 12(%ebp),%eax
pushl %eax
movl 8(%ebp),%eax
pushl %eax
call ___spawnve
addl $16,%esp
movl %eax,%edx
movl %edx,%eax
jmp L2
.stabn 68,0,10,LM3-_spawnv
LM3:
.p2align 2
L2:
leave
ret
Lscope0:
.stabs "",36,0,0,Lscope0-_spawnv
.text
.stabs "",100,0,0,Letext
Letext:
== end of spawnv.s
- Raw text -