delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2016/02/16/21:15:08

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: <CAA2C=vAujKzSw-dfU8OyZZnvjGY_rRWEuDSVTgaou4DLn1dV-A@mail.gmail.com>
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> <n8norb$gck$1 AT usenet DOT news DOT interia DOT pl>
<56AF7CFB DOT 8010507 AT iki DOT fi> <n8obct$m4c$1 AT usenet DOT news DOT interia DOT pl>
<83twlsyya8 DOT fsf AT gnu DOT org> <56B03232 DOT 8040802 AT iki DOT fi> <n8skjg$bf4$1 AT usenet DOT news DOT interia DOT pl>
<n9siu0$hu6$1 AT usenet DOT news DOT interia DOT pl> <7c07fdd8-c7f5-4cba-b83d-42407a6717f7 AT googlegroups DOT com>
<CAA2C=vAujKzSw-dfU8OyZZnvjGY_rRWEuDSVTgaou4DLn1dV-A AT mail DOT gmail 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]" <djgpp AT delorie DOT com>
Injection-Date: Wed, 17 Feb 2016 02:05:28 +0000
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

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: "<tab>rep/movsl<tab>(%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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019