> -----Original Message----- > From: Ralf Baechle [mailto:ralf@xxxxxxxxxxxxxx] > Sent: 16 January 2015 14:47 > To: Daniel Sanders > Cc: linux-mips@xxxxxxxxxxxxxx; Paul Burton; Markos Chandras; James > Hogan; Behan Webster; Sergei Shtylyov; David Daney > Subject: Re: [PATCH v2] MIPS: Changed current_thread_info() to an > equivalent supported by both clang and GCC > > On Sat, Jan 10, 2015 at 12:52:40PM +0000, Daniel Sanders wrote: > > > The problem is that clang doesn't honour named registers on local > variables > > and silently treats them as normal uninitialized variables. However, it > > does honour them on global variables. > > Older versions of <asm/unistd.h> which have been copied into some > userland > packages are using some local register variables in syscall wrappers. These > syscall wrappers have historically been a pain because every once in a > while they got broken by a new GCC release or other issues. If you're > lucky that has been resolved by the maintainers of those external software > packages - the only way to be certain is the review ... > > At least the kernel does no longer do syscalls. > > Ralf Thanks for warning me. I'll have to keep an eye out for that.