X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f X-Received: by 10.107.169.130 with SMTP id f2mr625617ioj.10.1455674728605; Tue, 16 Feb 2016 18:05:28 -0800 (PST) X-Received: by 10.182.101.196 with SMTP id fi4mr234382obb.4.1455674728535; Tue, 16 Feb 2016 18:05:28 -0800 (PST) Newsgroups: comp.os.msdos.djgpp Date: Tue, 16 Feb 2016 18:05:28 -0800 (PST) In-Reply-To: Complaints-To: groups-abuse AT google DOT com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=65.13.115.246; posting-account=p5rsXQoAAAB8KPnVlgg9E_vlm2dvVhfO NNTP-Posting-Host: 65.13.115.246 References: <201601312013 DOT u0VKDC4O017569 AT delorie DOT com> <56AF7CFB DOT 8010507 AT iki DOT fi> <83twlsyya8 DOT fsf AT gnu DOT org> <56B03232 DOT 8040802 AT iki DOT fi> <7c07fdd8-c7f5-4cba-b83d-42407a6717f7 AT googlegroups DOT com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <4b2f2149-2994-4ff0-bda2-8051f1a27097@googlegroups.com> Subject: Re: ANNOUNCE: Update of DJGPP port of gcc-5.3.0 From: "rugxulo AT gmail DOT com [via djgpp AT delorie DOT com]" Injection-Date: Wed, 17 Feb 2016 02:05:28 +0000 Content-Type: text/plain; charset=ISO-8859-1 Bytes: 3317 Lines: 54 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk Hi again, On Monday, February 15, 2016 at 8:11:49 PM UTC-6, Ozkan Sezer (sezeroz AT spam DOT no) [via djgpp AT spam DOT no] wrote: > > AFAICS, it is from quake's d_copy.s assembler source. The actual file should've been named d_copy.S (capital S) since it uses the preprocessor (to #include three *.h files and #define stuff). The file makefile.linux seems to use "-x assembler-with-cpp" to guarantee this. The actual line (137) is this: " rep/movsl (%esi),(%edi)" ... which is really this: "rep/movsl(%esi),(%edi)" But even more curious is that the file has copious line comments starting with "//". So if I had to guess, it's that GAS is (now) confusing the rest of the instruction as a comment. A quick diff (on objdump output) shows this: - dd: f3 a5 rep movs DWORD PTR es:[edi],DWORD PTR ds:[esi] - df: 01 c6 add esi,eax - e1: 01 d7 add edi,edx - e3: 4d dec ebp + dd: f3 01 c6 repz add esi,eax + e0: 01 d7 add edi,edx + e2: 4d dec ebp Notice that the "a5" is completely omitted, thus causing it to combine with the next instruction? Hmmm, no, "gcc -E -c" still shows "rep/movsl (%esi),(%edi)". Checking /dev/env/DJDIR/share/info/as.info ... 9.15 80386 Dependent Features 9.15.3.2 Special Characters " If the `--divide' command line option has not been specified then the `/' character appearing anywhere on a line also introduces a line comment. " But 2.25.1's as.info says the same. So if this differs from 2.25.1, maybe they finally "fixed" it to do what the doc says. (A quick check of 2.19 info doc seems to imply similar, but it also almost seems to imply that '/' would only be a valid comment at the beginning of a line.) Weird stuff. :-P