Hi Dave,
On Thu, Sep 09, 2010 at 06:16:07PM -0700, Dave Hylands wrote:
> > I've understood so far your explanations. But one thing I am
> > missing: I claim that I do not do an 64-bit division, but an 32-bit
> > division.
> >
> > Why? I have run make tags to create an architecture dependent tags
> > file. When I go to s64 and jump to the definition I land in
> > include/asm-generic/int-l64.h . There is the typedef:
> >
> > typedef signed long s64;
>
> I think you're looking in the wrong file.
>
> include/linux/types.h includes asm/types.h
> arch/x86/include/asm/types.h includes asm-generic/types.h
> include/asm-generic/types.h includes asm-generic/int-ll64.h
> include/asm-generic/int-ll64.h has the following typedef for s64:
>
> typedef signed long long s64;
>
> which is in fact a 64-bit type.
>
You're right. I've misused ctags within vim - it was configured to jump
to the first entry if there are several files found (for vim users: now
I use g] instead of CTRL-] so that I get a list of all hits).
So for example I get for g] on "s64" the following list (showing only the first
two hits):
# pri verw. tag Datei
1 F t s64 include/asm-generic/int-l64.h
typedef signed long s64;
2 F t s64 include/asm-generic/int-ll64.h
typedef signed long long s64;
...
Is there any way to know which one is the correct one, i.e. the one
which is really used in my context?
Am I correct that arch/x86/include/asm/types.h is for all 32-bit
machines and arch/ia64/include/asm/types.h is for all 64-bit machines
with an intel compatible architecture?
Thanks again!
Andreas
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to [email protected]
Please read the FAQ at http://kernelnewbies.org/FAQ