Hi PPC folks, as of v3.3 the integrated assembler seems to work fine. But it is not on by default. What is the obstacle for this last step? Just curious, Gabor
Gabor Greif <ggreif at gmail.com> wrote:> as of v3.3 the integrated assembler seems to work fine. > But it is not on by default. What is the obstacle for this last step?Well, it's support is not complete ... The integrated assembler supports all general-purpose instructions the compiler itself generates, but has only partial support for all the rest, in particular nearly no support for any supervisor mode instructions. This means that if you use inline asm to generate any of those instructions (in particular in kernel code or other code that runs in supervisor mode), this would fail when using the internal assembler. Bye, Ulrich
Hi Ulrich! Thanks for your answer. On 12/5/13, Ulrich Weigand <Ulrich.Weigand at de.ibm.com> wrote:> Gabor Greif <ggreif at gmail.com> wrote: > >> as of v3.3 the integrated assembler seems to work fine. >> But it is not on by default. What is the obstacle for this last step? > > Well, it's support is not complete ... The integrated assembler > supports all general-purpose instructions the compiler itself > generates, but has only partial support for all the rest, in > particular nearly no support for any supervisor mode instructions.I see.> > This means that if you use inline asm to generate any of > those instructions (in particular in kernel code or other > code that runs in supervisor mode), this would fail when > using the internal assembler.So '-integrated-as' has not been enabled by default because clang is not yet a drop-in replacement for 'gcc' in this mode. Thanks for the clarification. Cheers, Gabor> > Bye, > Ulrich > >
Joerg Sonnenberger
2013-Dec-05 15:41 UTC
[LLVMdev] Integrated 'as' for PowerPC by default?
On Thu, Dec 05, 2013 at 01:31:03PM +0100, Ulrich Weigand wrote:> Gabor Greif <ggreif at gmail.com> wrote: > > > as of v3.3 the integrated assembler seems to work fine. > > But it is not on by default. What is the obstacle for this last step? > > Well, it's support is not complete ... The integrated assembler > supports all general-purpose instructions the compiler itself > generates, but has only partial support for all the rest, in > particular nearly no support for any supervisor mode instructions. > > This means that if you use inline asm to generate any of > those instructions (in particular in kernel code or other > code that runs in supervisor mode), this would fail when > using the internal assembler.I'm not sure that's a strong enough reason. From my experience, at least for PPC32 it is already less problematic to use the integrated assembler for ELF. Joerg
Reasonably Related Threads
- [LLVMdev] Integrated 'as' for PowerPC by default?
- [LLVMdev] Thread local storage and PowerPC
- [LLVMdev] PowerPC 64 build bots...
- [LLVMdev] Removing TargetMachine CPU auto-detection for PowerPC and SystemZ?
- [LLVMdev] PowerPC codegen experts looking for challenges?