[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference smurf::unix_objsym

Title:Digital UNIX Object File/Symbol Table Notes Conference
Moderator:SMURF::LOWELL
Created:Mon Nov 25 1996
Last Modified:Thu Jun 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:71
Total number of notes:314

65.0. "Variable and section alignment not representable" by SMURF::LOWELL () Mon Feb 17 1997 13:12

There is no way to represent the required alignment for
symbols in the coff symbol table.  In particular, it would
be useful to identify the alignment requirements for allocating
a common.  The linker currently uses the default alignment of
8 bytes for every common that it allocates.

(Discussion of this issue in OF/STWG focused on 128-bit floating
 variables.  The group accepted Mike Rickabaugh's recommendation
 that ld should use 16 byte alignment for anything with a size
 16-bytes or greater.  Everything under 16 bytes in size will still
 be allocated with the 8-byte default alignment.)

There is also no way to represent the alignment requirements for
a section.  In this case, the linker defaults to using SCNROUND 
alignment which is 16 bytes.

T.RTitleUserPersonal
Name
DateLines
65.1Section alignment requestNNTPD::"[email protected]"Craig NethWed May 28 1997 15:15100
Return-path: neth
Delivery-date: Thu, 15 May 97 10:48:27 -0400
Return-path: neth
Received: from quarry.zk3.dec.com by mailhub2.zk3.dec.com;
(5.65v3.2/1.1.8.2/18Sep95-0525AM)
	id AA00195; Thu, 15 May 1997 10:48:25 -0400
Received: from granda.zk3.dec.com by quarry.zk3.dec.com;
(5.65v3.2/1.1.8.2/16Jan95-0946AM)
	id AA28354; Thu, 15 May 1997 10:47:56 -0400
Received: from localhost by granda.zk3.dec.com
(5.65v3.2/1.1.10.5/11Nov96-0300PM)
	id AA24485; Thu, 15 May 1997 10:49:34 -0400
Message-id: <[email protected]>
X-mailer: exmh version 1.6.7 5/3/96
Mime-version: 1.0
Content-type: text/plain; charset=us-ascii
X-mts: smtp
To: lowell
Cc: [email protected]
Subject: Request to have STWG work on section alignment controls
Date: Thu, 15 May 97 10:49:34 -0400
From: "Craig Neth DTN 381-2174" <neth>

The following request is for an object file enhancement that would allow
different alignment of sections (and possibly symbols?) than the defaults.

We've heard this several times now - ev6 wants to be able to align .text
on stronger boundaries, and now this request.

I'd like to propose that STWG work on defining a mechanism for this 
(my previous thinking was to reclaim the dead lnno (or lnnoptr?) field in the 
section header for the section alignment).   If you folks define it, we 
can work on getting it into the linker.

Craig

------- Forwarded Message

Return-Path: [email protected] 
Delivery-Date: Thu, 15 May 97 10:38:25 -0400
Return-Path: [email protected]
Received: from quarry.zk3.dec.com by mailhub2.zk3.dec.com; 
(5.65v3.2/1.1.8.2/18Sep95-0525AM)
	id AA32312; Thu, 15 May 1997 10:38:23 -0400
Received: from quark.zko.dec.com by quarry.zk3.dec.com; 
(5.65v3.2/1.1.8.2/16Jan95-0946AM)
	id AA27102; Thu, 15 May 1997 10:37:56 -0400
Date: Thu, 15 May 1997 10:38:12 -0400
Message-Id: <[email protected]>
From: [email protected] (Steve Lionel)
To: [email protected]
Subject: Re: Forcing common blocks to page boundaries? - comp.lang.fortran 
#51769
X-Vms-To: [email protected]
X-Vms-Cc: TLE::YOUNGS,TLE::DESPRES

In the following posting from Scott Stallcup of the Space Telescope Science
Institute, he explains how DIGITAL UNIX's lack of ability to specify
page-alignment for PSECT contributions prevents them from porting their
application to that platform.  This has been a sore point for quite a while,
is there anything that could be done about this in the near term?

				Steve

In article <[email protected]>, Scott Stallcup <[email protected]>
writes:
Steve Lionel wrote:
> 
> ...
>
> > In VMS Fortran, how does one force a common block to start on a page
> > boundary?
> 
> In the current versions of Digital Fortran, you can use:
> 
>    CDEC$ PSECT /FOO/ ALIGN=PAGE
> 
> This will do the correct thing on VAX and Alpha.  If you have an older
> version, use ALIGN=9 on VAX and ALIGN=16 on Alpha.  (Caveat for
> completeness - PAGE isn't supported on UNIX and neither are alignment
> values greater than 3, due to lack of object language support.)
> 

 The lack of support for page alignment of common blocks on Digital Unix
 has been a major problem for us.  There are no reasonable workarounds
 either (that don't require a major rewrite of out code).  

 Our system (million+ lines of code) doesn't run on Digital Unix because 
 of this one problem.  We currently support only VMS and Sun/Solaris...

 
- --------------------------------------
Scott Stallcup  ([email protected])
Space Telescope Science Institute


------- End of Forwarded Message


[Posted by WWW Notes gateway]
65.2only half joking...QUARRY::petertrigidly defined areas of doubt and uncertaintyThu May 29 1997 11:374
I volunteer to go down to the STSI to gather their requirements and 
work on a proposal!

PeterT