Re: ARM inline assembly usage in Linux kernel

2014-02-20 Thread Renato Golin
On 20 February 2014 12:59, Ramana Radhakrishnan wrote: > It's not really because GAS supports it, but there exists a large body > of code out there which uses inline assembler with pre-UAL syntax. I'm > not sure people will appreciate a blanket break in one version of the > toolchain and especiall

Re: ARM inline assembly usage in Linux kernel

2014-02-20 Thread Ramana Radhakrishnan
On Wed, Feb 19, 2014 at 11:26 PM, Renato Golin wrote: > On 19 February 2014 23:19, Andrew Pinski wrote: >> With the unified assembly format, you should not need those >> .arm/.thumb and in fact emitting them can make things even worse. > > If only we could get rid or all pre-UAL inline assembly o

Re: ARM inline assembly usage in Linux kernel

2014-02-20 Thread Richard Earnshaw
On 19/02/14 23:19, Andrew Pinski wrote: > On Wed, Feb 19, 2014 at 3:17 PM, Renato Golin wrote: >> On 19 February 2014 11:58, Richard Sandiford >> wrote: >>> I agree that having an unrecognised asm shouldn't be a hard error until >>> assembly time though. Saleem, is the problem that this is being

Re: ARM inline assembly usage in Linux kernel

2014-02-20 Thread Renato Golin
On 20 February 2014 10:11, Ramana Radhakrishnan wrote: > The current behaviour is that when the compiler generates code for > Thumb1 and Thumb2 we switch back to the appropriate state after inline > assembler is emitted. We don't switch back to ARM state on the (fairly > robust) assumption that mo

Re: ARM inline assembly usage in Linux kernel

2014-02-20 Thread Ramana Radhakrishnan
On Wed, Feb 19, 2014 at 11:19 PM, Andrew Pinski wrote: > On Wed, Feb 19, 2014 at 3:17 PM, Renato Golin wrote: >> On 19 February 2014 11:58, Richard Sandiford >> wrote: >>> I agree that having an unrecognised asm shouldn't be a hard error until >>> assembly time though. Saleem, is the problem th

Re: ARM inline assembly usage in Linux kernel

2014-02-19 Thread Renato Golin
On 19 February 2014 23:19, Andrew Pinski wrote: > With the unified assembly format, you should not need those > .arm/.thumb and in fact emitting them can make things even worse. If only we could get rid or all pre-UAL inline assembly on the planet... :) The has been the only reason why we added

Re: ARM inline assembly usage in Linux kernel

2014-02-19 Thread Andrew Pinski
On Wed, Feb 19, 2014 at 3:17 PM, Renato Golin wrote: > On 19 February 2014 11:58, Richard Sandiford > wrote: >> I agree that having an unrecognised asm shouldn't be a hard error until >> assembly time though. Saleem, is the problem that this is being rejected >> earlier? > > Hi Andrew, Richard,

Re: ARM inline assembly usage in Linux kernel

2014-02-19 Thread Renato Golin
On 19 February 2014 11:58, Richard Sandiford wrote: > I agree that having an unrecognised asm shouldn't be a hard error until > assembly time though. Saleem, is the problem that this is being rejected > earlier? Hi Andrew, Richard, Thanks for your reviews! We agree that we should actually just

Re: ARM inline assembly usage in Linux kernel

2014-02-19 Thread Richard Sandiford
Andrew Pinski writes: > On Tue, Feb 18, 2014 at 6:56 PM, Saleem Abdulrasool > wrote: >> Hello. >> >> I am sending this at the behest of Renato. I have been working on the ARM >> integrated assembler in LLVM and came across an interesting item in the Linux >> kernel. >> >> I am wondering if this

Re: ARM inline assembly usage in Linux kernel

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 6:56 PM, Saleem Abdulrasool wrote: > Hello. > > I am sending this at the behest of Renato. I have been working on the ARM > integrated assembler in LLVM and came across an interesting item in the Linux > kernel. > > I am wondering if this is an unstated covenant between th

ARM inline assembly usage in Linux kernel

2014-02-18 Thread Saleem Abdulrasool
Hello. I am sending this at the behest of Renato. I have been working on the ARM integrated assembler in LLVM and came across an interesting item in the Linux kernel. I am wondering if this is an unstated covenant between the kernel and GCC or simply a clever use of an unintended/undefined behav