delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/12/29/11:35:46

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-1.2 required=5.0 tests=AWL,BAYES_20
X-Spam-Check-By: sourceware.org
Date: Mon, 29 Dec 2008 10:34:54 -0600
From: Brian Ford <Brian DOT Ford AT FlightSafety DOT com>
Reply-To: cygwin AT cygwin DOT com
To: cygwin AT cygwin DOT com
Subject: Re: Cygwin struct alignment
In-Reply-To: <004701c96993$ea2fa5f0$4001a8c0@mycomputer>
Message-ID: <Pine.CYG.4.58.0812291032260.2944@PC1163-8460-XP.flightsafety.com>
References: <006b01c965c1$6a7c6300$4001a8c0 AT mycomputer> <003a01c965fe$539063c0$4001a8c0 AT mycomputer> <495291CD DOT 1000207 AT bmts DOT com> <004701c96993$ea2fa5f0$4001a8c0 AT mycomputer>
MIME-Version: 1.0
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On Mon, 29 Dec 2008, John Emmas wrote:

> Yesterday I spent some time looking into this but didn't come to any
> hard & fast conclusions.   Variables themselves seem to correlate very well
> between MSVC and Cygwin (even 'long' which I thought was different).  But
> when calculating structure alignment (manually) sometimes Cygwin gave
> closer results to what I expected and sometime MSVC was closer.

The only major difference I'm aware of is that Cygwin defaults to 8 byte
alignment for long long and double for performance reasons, while MSVC
defaults to 4 byte alignment for those types I believe.

> Before I try Ralph's suggestion I'd like (if possible) to try building both
> versions with struct packing disabled.  This is fairly simple to do with
> Microsoft's compiler (I just set the member alignment to '1 byte') but can
> it be done for my Cygwin compiler - e.g. with a compiler option or a #pragma
> or whatever?

Google attribute packed as I don't remember the exact syntax, but I fail
to see how this actually helps your cause.

-- 
Brian Ford
Staff Realtime Software Engineer
VITAL - Visual Simulation Systems
FlightSafety International
the best safety device in any aircraft is a well-trained crew...

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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