From: Kyle Moffett <mrmacman_g4@mac.com>
To: Andi Kleen <ak@suse.de>
Cc: Adrian Bunk <bunk@stusta.de>,
LKML Kernel <linux-kernel@vger.kernel.org>,
David Woodhouse <dwmw2@infradead.org>,
david@lang.hm, linux-arch@vger.kernel.org
Subject: Re: Userspace compiler support of "long long"
Date: Thu, 28 Jun 2007 07:42:46 -0400 [thread overview]
Message-ID: <88515A48-E155-48A7-8EAE-095B080EAFE4@mac.com> (raw)
In-Reply-To: <200706280230.42515.ak@suse.de>
On Jun 27, 2007, at 20:30:42, Andi Kleen wrote:
> On Thursday 28 June 2007 00:30:52 Kyle Moffett wrote:
>> The only trick is if you care about building 32-bit compat code
>> using 64-bit linux kernel headers. In that case we should
>> probably just make all archs use "long long" for their 64-bit
>> integers, unless there's some platform I'm not remembering where
>> "long long" is 128-bits or bigger. The other benefit is that
>> people could then just use the printf format "%llu" for 64-bit
>> integers instead of having to conditionalize it all over the place.
>>
>> I'm working on a patch now.
>
> Changing this will give you a zillion warnings for printk formats.
Why? If this were a problem then we'd be getting a zillion warnings
*now* from all the 32-bit archs (which already use "long long" for 64-
bit. This would actually make it _easier_ to get the printk formats
right, as you could always use %ull for 64-bit types without having
to cast for 64-bit platforms.
This is another way to get around the "build 32-bit-compat userspace
on 64-bit kernel headers" problem: It tells GCC to use the
"smallest" available type of the given size, which ends up being
exactly the types we use now. On the other hand, it only works for
GCC which sort of ruins most of the reason for changing the types in
the first place.
typedef signed __s8 __attribute__((__mode__(__QI__)));
typedef unsigned __u8 __attribute__((__mode__(__QI__)));
typedef signed __s16 __attribute__((__mode__(__HI__)));
typedef unsigned __u16 __attribute__((__mode__(__HI__)));
typedef signed __s32 __attribute__((__mode__(__SI__)));
typedef unsigned __u32 __attribute__((__mode__(__SI__)));
typedef signed __s64 __attribute__((__mode__(__DI__)));
typedef unsigned __u64 __attribute__((__mode__(__DI__)));
Cheers,
Kyle Moffett
next prev parent reply other threads:[~2007-06-28 11:43 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-21 22:32 Linux Kernel include files Joerg Schilling
2007-06-21 23:25 ` david
2007-06-21 23:38 ` Joerg Schilling
2007-06-22 3:38 ` David Woodhouse
2007-06-22 5:18 ` H. Peter Anvin
2007-06-22 15:00 ` Adrian Bunk
2007-06-26 15:26 ` H. Peter Anvin
2007-06-27 1:32 ` Kyle Moffett
2007-06-27 15:40 ` Adrian Bunk
2007-06-27 15:52 ` Joerg Schilling
2007-06-27 15:59 ` Robert P. J. Day
2007-06-27 17:32 ` Userspace compiler support of "long long" Adrian Bunk
2007-06-27 22:30 ` Kyle Moffett
2007-06-27 22:57 ` Randy Dunlap
2007-06-27 23:16 ` Randy Dunlap
2007-06-28 2:12 ` Geert Uytterhoeven
2007-06-28 6:50 ` Jan Engelhardt
2007-06-28 11:34 ` Geert Uytterhoeven
2007-06-28 11:36 ` David Woodhouse
2007-06-28 12:20 ` Kyle Moffett
2007-06-28 3:06 ` Kyle McMartin
2007-06-28 0:30 ` Andi Kleen
2007-06-28 11:42 ` Kyle Moffett [this message]
2007-06-28 3:57 ` Matthew Wilcox
2007-06-28 11:53 ` Kyle Moffett
2007-06-28 12:08 ` Jakub Jelinek
2007-06-28 12:18 ` Kyle Moffett
2007-06-28 4:03 ` H. Peter Anvin
2007-06-28 10:26 ` Harald Arnesen
2007-06-28 10:44 ` Joerg Schilling
2007-06-28 12:11 ` Kyle Moffett
2007-06-28 15:31 ` Mark Brown
2007-06-28 4:02 ` Linux Kernel include files H. Peter Anvin
2007-06-25 15:17 ` Joerg Schilling
2007-06-25 15:27 ` David Woodhouse
2007-06-25 18:04 ` Harald Arnesen
2007-06-25 20:26 ` Joerg Schilling
2007-06-25 20:32 ` David Woodhouse
2007-06-25 21:43 ` Harald Arnesen
2007-06-25 21:48 ` Harald Arnesen
2007-06-25 21:49 ` Joerg Schilling
2007-06-25 22:30 ` Harald Arnesen
2007-06-25 22:42 ` Joerg Schilling
2007-06-21 23:59 ` Arnd Bergmann
2007-06-25 15:06 ` Joerg Schilling
2007-06-25 16:00 ` david
2007-06-25 14:48 ` Joerg Schilling
2007-06-21 23:47 ` Arjan van de Ven
2007-06-25 14:53 ` Joerg Schilling
2007-06-25 15:26 ` Arjan van de Ven
2007-06-25 15:27 ` Robert P. J. Day
2007-06-25 20:18 ` Sam Ravnborg
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=88515A48-E155-48A7-8EAE-095B080EAFE4@mac.com \
--to=mrmacman_g4@mac.com \
--cc=ak@suse.de \
--cc=bunk@stusta.de \
--cc=david@lang.hm \
--cc=dwmw2@infradead.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®