new syscall stub support for ia64 libc
David Mosberger
davidm@napali.hpl.hp.com
Thu Nov 13 02:38:00 GMT 2003
>>>>> On Wed, 12 Nov 2003 22:50:46 +0100, Jakub Jelinek <jakub@redhat.com> said:
>> - sysdep.h includes tls.h - tls.h includes descr.h
Jakub> 2x yes
>> - descr.h includes lowlevellock.h
Jakub> No. lowlevellock.h doesn't need it, see what e.g. SPARC or
Jakub> PPC are doing in lowlevellock.h. Just a few inlines have to
Jakub> be replaced with macros, that's all.
I see what you mean. It's a bit icky to depend on the other
header-files including the pre-requisites of lowlevellock.h, but yes,
it makes the problem _much_ simpler to handle, so thanks for the tip.
Next stupid question: what's the purpose of librt? I'm asking since
sysdep.h now says:
#if defined USE_DL_SYSINFO \
&& (!defined NOT_IN_libc || defined IS_IN_libpthread)
# define IA64_USE_NEW_STUB
#else
# undef IA64_USE_NEW_STUB
#endif
and in <sysdep-cancel.h>, it says:
#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt
# undef PSEUDO
# define PSEUDO(name, syscall_name, args) \
:
<code that uses the IA64_USE_NEW_STUB convention>
:
That is, anything in librt that uses the PSEUDO() macro from
sysdep-cancel.h will try to uses the new stub, but nothing else will.
Will this inconsistency cause problems?
--david
More information about the Libc-hacker
mailing list