From: Hans-Bernhard Broeker Newsgroups: comp.os.msdos.djgpp Subject: Re: Combined C/asm listing (was Re: Fastest bitblt?) Date: 29 Feb 2000 18:36:02 GMT Organization: Aachen University of Technology (RWTH) Lines: 38 Message-ID: <89h3ii$ned$1@nets3.rz.RWTH-Aachen.DE> References: <38BBDCDA DOT 7CA5C1CE AT cyberoptics DOT com> <38BC06FB DOT 32548B21 AT cyberoptics DOT com> NNTP-Posting-Host: acp3bf.physik.rwth-aachen.de X-Trace: nets3.rz.RWTH-Aachen.DE 951849362 24013 137.226.32.75 (29 Feb 2000 18:36:02 GMT) X-Complaints-To: abuse AT rwth-aachen DOT de NNTP-Posting-Date: 29 Feb 2000 18:36:02 GMT User-Agent: tin/1.4-19991113 ("No Labels") (UNIX) (Linux/2.0.0 (i586)) Originator: broeker@ To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Eric Rudd wrote: > gcc -g -Wa,-adhl foo.c >foo.lst That's a largely correct set of options, indeed. For details, look up info as invoking and the menu entry 'a' in that info node to see what the single option letters behind the '-a' do. You may want to add '-fverbose-asm' to that set of flags. > The -g option seems to be necessary, That's true. Without the '-g', gcc doesn't generate linenumber information, and without that, as cannot find the source line an assembly operation came from. It's clearly documented to behave like that. > the two times that -Wa,-a,-ad worked, I got the C source in between > assembly directives like this: > /APP > C statement > /NO_APP That's a different piece of cake, I think. This bracing in pairs of /APP and /NO_APP macros is a typical sign of inline assembly being passed to as. You'll find it around every block of assembly not generated by gcc. Other options on the gcc command line may influence wether inline functions are used or not, so maybe that's what made this miraculously work, from time to time. It's hard to say without concrete example cases. -- Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de) Even if all the snow were burnt, ashes would remain.