Skip to content
  • Marc Zyngier's avatar
    arm64: fix alignment padding in assembly code · aeed41a9
    Marc Zyngier authored
    
    
    An interesting effect of using the generic version of linkage.h
    is that the padding is defined in terms of x86 NOPs, which can have
    even more interesting effects when the assembly code looks like this:
    
    ENTRY(func1)
    	mov	x0, xzr
    ENDPROC(func1)
    	// fall through
    ENTRY(func2)
    	mov	x0, #1
    	ret
    ENDPROC(func2)
    
    Admittedly, the code is not very nice. But having code from another
    architecture doesn't look completely sane either.
    
    The fix is to add arm64's version of linkage.h, which causes the insertion
    of proper AArch64 NOPs.
    
    Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
    Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
    aeed41a9