From: jamal <hadi-fAAogVwAN2Kw5LPnMra/2Q@public.gmane.org>
To: Arnaldo Carvalho de Melo <acme-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: dwarves-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: Changing the word-size was: Re: eat your own dog food?
Date: Sat, 12 Jan 2008 13:08:41 -0500 [thread overview]
Message-ID: <1200161321.31540.10.camel@localhost> (raw)
In-Reply-To: <20080112172856.GD23567-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
[-- Attachment #1: Type: text/plain, Size: 931 bytes --]
On Sat, 2008-12-01 at 15:28 -0200, Arnaldo Carvalho de Melo wrote:
> Now what seems to be the last thing to do is to follow typedefs and find
> unnamed structs, think about spinlock_t, socket_lock_t, etc.
>
Good stuff Arnaldo - updated local tree.
I should be able to test later today.
Dont know much about cmake, is it possible to check for elfutils version
and not depend on build_id if version < xxx?
This way i dont have to go out of my way to maintain my own versions of
elf utilities. I have to do the patch you sent earlier manually now. I
will remove it if you will fix cmake.
BTW, while perusing archs i managed i think to gather sufficiently
accurate info (;->) on the different alignments; i got lazy at the end,
but quiet a few are in the attached txt file incase you find them
useful. Double check sparc for example. I think most 64-bit hardware
looks consistent; the funnies are in 32-bit archs.
cheers,
jamal
[-- Attachment #2: eabis --]
[-- Type: text/plain, Size: 2823 bytes --]
MIPS EABI
=========
Sizes and alignments
--------------------
Type Size (bytes) Alignment (bytes)
char 1 1
short 2 2
int 4 4
unsigned 4 4
long 4 4 (32-bit mode)
8 8 (64-bit mode)
long long 8 8
float 4 4
double 8 8
pointers 4 4 (32-bit mode)
8 8 (64-bit mode)
* alignment within aggregates (structs and unions) is as above, with
padding added if needed
* aggregates have alignment equal to that of their most aligned
member
* aggregates have sizes which are a multiple of their alignment
ia32 Sizes and alignments
--------------------
Type Size (bytes) Alignment (bytes)
char 1 1
short 2 2
int 4 4
unsigned 4 4
long 4 4
long long 8 4
float 4 4
double 8 4
pointers 4 4
* alignment within aggregates (structs and unions) is as above, with
padding added if needed
* aggregates have alignment equal to that of their most aligned
member
* aggregates have sizes which are a multiple of their alignment
This may result in tail padding.
ia64 Sizes and alignments
--------------------
Type Size (bytes) Alignment (bytes)
char 1 1
short 2 2
int 4 4
unsigned 4 4
long 8 8
long long 8 8
float 4 4
double 8 8
pointers 8 8
* An entire structure or union object shall be aligned on the same
boundary as its most strictly aligned member.
* Each member shall be assigned to the lowest available offset with the
appropriate alignment. This may require internal padding, depending
on the previous member.
* A structure's size shall be increased, if necessary, to make it a
multiple of the alignment. This may require tail padding, depending
on the last member.
AMD 64
-------
Type Size (bytes) Alignment (bytes)
char 1 1
short 2 2
int 4 4
unsigned 4 4
long 4 4
8 8 (64-bit mode)
long long 8 4
8 8 (64-bit mode)
float 4 4
double 8 4
pointers 4 4
8 8 (64-bit mode)
powerpc - 32bit
Type Size (bytes) Alignment (bytes)
char 1 1
short 2 2
int 4 4
unsigned 4 4
long 4 4
long long 8 8
float 4 4
double 8 8
long double 16 16
pointers 4 4
powerpc - 64bit
Type Size (bytes) Alignment (bytes)
char 1 1
short 2 2
int 4 4
unsigned 4 4
long 8 8
long long 8 8
int128 16 16
float 4 4
double 8 8
long double 16 16
pointers 8 8
sparc:
Type Size (bytes) Alignment (bytes)
char 1 1
short 2 2
int 4 4
unsigned 4 4
long 4 4
long long 8 8
float 4 4
double 8 8
long double 16 8
pointers 4 4
s390:
------
Type Size (bytes) Alignment (bytes)
char 1 1
short 2 2
int 4 4
unsigned 4 4
long 4 4
long long 8 8
float 4 4
double 8 8
long double 16 16
pointers 4 4
s390-zseries
---------
next prev parent reply other threads:[~2008-01-12 18:08 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-10 12:42 eat your own dog food? jamal
2008-01-10 13:39 ` Arnaldo Carvalho de Melo
[not found] ` <20080110133926.GF22437-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-10 13:55 ` jamal
2008-01-10 14:06 ` Arnaldo Carvalho de Melo
[not found] ` <20080110140635.GG22437-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-10 16:39 ` Arnaldo Carvalho de Melo
[not found] ` <20080110163959.GJ22437-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-10 21:37 ` jamal
2008-01-10 21:44 ` Arnaldo Carvalho de Melo
[not found] ` <20080110214438.GT22437-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-11 0:45 ` jamal
2008-01-11 1:04 ` jamal
2008-01-10 21:39 ` Arnaldo Carvalho de Melo
[not found] ` <20080110213909.GS22437-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-10 21:41 ` jamal
2008-01-12 15:21 ` Arnaldo Carvalho de Melo
[not found] ` <20080112152109.GA23567-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-12 15:54 ` Changing the word-size was: " Arnaldo Carvalho de Melo
[not found] ` <20080112155404.GB23567-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-12 16:28 ` Arnaldo Carvalho de Melo
[not found] ` <20080112162808.GC23567-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-12 17:28 ` Arnaldo Carvalho de Melo
[not found] ` <20080112172856.GD23567-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-12 18:08 ` jamal [this message]
2008-01-12 18:42 ` Arnaldo Carvalho de Melo
[not found] ` <20080112184211.GA17675-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-13 0:42 ` jamal
2008-01-13 1:15 ` jamal
[not found] ` <20080113163106.GE17675@ghostprotocols.net>
[not found] ` <20080113163106.GE17675-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-13 18:07 ` Arnaldo Carvalho de Melo
[not found] ` <20080113180730.GG17675-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-13 18:19 ` Arnaldo Carvalho de Melo
[not found] ` <20080113181901.GH17675-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-13 18:26 ` Arnaldo Carvalho de Melo
[not found] ` <20080113182657.GI17675-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-13 19:13 ` jamal
2008-01-12 21:36 ` Arnaldo Carvalho de Melo
[not found] ` <20080112213635.GC17675-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-12 22:08 ` Arnaldo Carvalho de Melo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1200161321.31540.10.camel@localhost \
--to=hadi-faaogvwan2kw5lpnmra/2q@public.gmane.org \
--cc=acme-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=dwarves-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.