Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.os.os2.programmer.misc > #1557

Re: CPU Type field in LX header

From David Parsons <dwparsons@t-online.de>
Newsgroups comp.os.os2.programmer.misc
Subject Re: CPU Type field in LX header
Date 2016-10-29 14:37 +0200
Organization A noiseless patient Spider
Message-ID <nv255q$act$1@dont-email.me> (permalink)
References <nug59g$g0d$1@dont-email.me> <580ba66e$0$7910$b1db1813$e2fc9064@news.astraweb.com> <11p86vVJT4Oe-pn2-bCPYQ4BLD7Qn@slamain>

Show all headers | View raw


On 26-10-16 20:44, Steven Levine wrote:
> On Sat, 22 Oct 2016 17:48:37 UTC, Dave Yeo <dave.r.yeo@gmail.com>
> wrote:
>
> Hi Dave,
>
>>> There is a field in the LX header which specifies the CPU Type but all
>>> files show i386 even though I believe that many are at i686.
>
> As Dave noted this is probably gcc.  The relevant wlink code is
>
>      case CMT_WAT_PROC_MODEL:
>      case CMT_MS_PROC_MODEL:
>          proc = GET_U8_UN( ObjBuff ) - '0';
>          if( proc > FmtData.cpu_type )
>              FmtData.cpu_type = proc;
>          break;
>
> and
>
>      if( FmtData.cpu_type <= 3 ) {
>          exe_head.cpu_type = OSF_CPU_386;
>      } else {
>          exe_head.cpu_type = OSF_CPU_486;
>      }
>
> which says that the CPU type comes from the OMF record and wlink maps
> the CPU type to either 386 or 486.
>
>>> I've complied a test program here with 'gcc -march=i686 test.c' which
>>> compiles and runs successfully but it also shows the CPU type as i386.
>
> What linker did you use and did you check the COMMENT records
> generated by gcc?
>
>>> Could it be that the -march switch is silently ignored in our gcc builds?
>>> For the record I used gcc v4.5.2.
>
> That's pretty antique.
>
>> It's the linkers job to set fields in the LX header, all GCC does is
>> produce the correct assembly code and obj files and ask the linker to
>> link them into an executable (or DLL).
>
> That's sorta true.  As noted above, gcc is responsible for indicating
> the CPU type required by each object model.
>
>> Wlink could be patched (perhaps already is?) to use i686 in the CPU
>> field but I don't know if the kernel would be happy to load something
>> besides i386.
>
> AFAIK, it would not care.  I've not seen any code that cares about the
> CPU type field in the LX header.
>
> Steven
>
>
Hi Steven,

Those 2 snippets confirm my assumption, thanks.

As for GCC, the latest I've found on Paul's site is 4.9.2, not so much newer and 
anyway I don't use C very often & when I do I normally use Watcom.

As for the linker, it is an old version of wl.exe which seems to be a patched 
version of wlink v1.6.
I don't have the source for it and I don't know now where I got it from so I 
don't know what is patched. When you invoke it, it says something about 
experimental HLL.
I noticed that ANPM offers a version of wl, I'll give that a try and see if it 
is any better.

Dave P.

Back to comp.os.os2.programmer.misc | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-10-22 18:49 +0200
  Re: CPU Type field in LX header "Doug Bissett" <dougb007!SPAM@telus.net> - 2016-10-22 17:32 +0000
    Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-10-23 18:35 +0200
      Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-24 11:20 +0200
      Re: CPU Type field in LX header "Doug Bissett" <dougb007!SPAM@telus.net> - 2016-10-25 16:50 +0000
        Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-10-26 17:37 +0200
          Re: CPU Type field in LX header "Doug Bissett" <dougb007!SPAM@telus.net> - 2016-10-26 19:15 +0000
            Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-10-29 15:41 +0200
              Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-29 11:43 -0700
                Re: CPU Type field in LX header "Steven Levine" <steve53@nomail.earthlink.net> - 2016-11-09 19:36 -0600
                Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-11-10 08:52 -0800
                Re: CPU Type field in LX header "Steven Levine" <steve53@nomail.earthlink.net> - 2016-11-11 10:41 -0600
                Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-11-11 17:04 -0800
              Re: CPU Type field in LX header "Doug Bissett" <dougb007!SPAM@telus.net> - 2016-10-29 22:22 +0000
                Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-11-01 17:47 +0100
                Re: CPU Type field in LX header "Doug Bissett" <dougb007!SPAM@telus.net> - 2016-11-01 19:18 +0000
  Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-22 10:48 -0700
    Re: CPU Type field in LX header Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-10-22 21:58 +0200
      Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-22 23:47 +0200
        Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-22 20:05 -0700
          Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-23 11:08 +0200
            Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-23 10:33 -0700
              Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-24 12:36 +0200
                Re: CPU Type field in LX header Peter Flass <peter_flass@yahoo.com> - 2016-10-25 16:53 -0400
                Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-27 10:49 +0200
                Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-28 21:14 -0700
                Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-31 14:14 +0100
                Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-31 07:59 -0700
                Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-11-01 14:46 +0100
                Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-28 21:07 -0700
      Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-22 20:00 -0700
        Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-23 10:46 +0200
          Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-23 10:58 -0700
            Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-24 13:04 +0200
              Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-28 21:28 -0700
                Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-31 14:49 +0100
            Re: CPU Type field in LX header "A.D. Fundum" <what.ever@neverm.ind> - 2016-10-24 13:24 +0200
    Re: CPU Type field in LX header Paul Smedley <paul@smedley.id.au> - 2016-10-23 11:49 +1030
      Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-22 20:11 -0700
        Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-23 11:09 -0700
          Re: CPU Type field in LX header "Steven Levine" <steve53@nomail.earthlink.net> - 2016-10-26 15:44 -0500
            Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-28 20:56 -0700
              Re: CPU Type field in LX header "Steven Levine" <steve53@nomail.earthlink.net> - 2016-11-09 19:38 -0600
        Re: CPU Type field in LX header Paul Smedley <paul@smedley.id.au> - 2016-10-27 19:30 +1030
          Re: CPU Type field in LX header Paul Smedley <paul@smedley.id.au> - 2016-10-29 11:39 +1030
            Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-28 20:54 -0700
    Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-10-23 18:45 +0200
      Re: CPU Type field in LX header Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-10-23 19:32 +0200
      Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-23 11:06 -0700
    Re: CPU Type field in LX header "Steven Levine" <steve53@nomail.earthlink.net> - 2016-10-26 13:44 -0500
      Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-10-29 14:37 +0200
        Re: CPU Type field in LX header Paul Smedley <paul@smedley.id.au> - 2016-10-30 12:13 +1030
          Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-10-30 08:57 +0100
        Re: CPU Type field in LX header "Steven Levine" <steve53@nomail.earthlink.net> - 2016-11-09 19:54 -0600
          Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-11-12 14:48 +0100
  Re: CPU Type field in LX header Dave Yeo <dave.r.yeo@gmail.com> - 2016-10-22 11:02 -0700
  Re: CPU Type field in LX header Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-10-22 21:54 +0200
  Re: CPU Type field in LX header Lars Erdmann <lars.erdmann@arcor.de> - 2016-10-23 12:56 +0200
    Re: CPU Type field in LX header David Parsons <dwparsons@t-online.de> - 2016-10-23 18:20 +0200
      Re: CPU Type field in LX header Peter Flass <peter_flass@yahoo.com> - 2016-10-23 15:11 -0400

csiph-web