        .section .text.foo,"ax",@progbits
        .type foo, @function
foo:
        .global foo
        adrp    x0, :got:ifunc
        ldr     x0, [x0, #:got_lo12:ifunc]
	bl ifunc
        adrp    x0, xxx
        add     x0, x0, :lo12:xxx
        ret

        .section .text.bar,"ax",@progbits
        .type bar, @function
bar:
        .global bar
        ret

        .section .text.ifunc,"ax",@progbits
        .type ifunc, @gnu_indirect_function
        .global ifunc
ifunc:
        ret

        .section .data.foo,"aw",@progbits
xxx:
	.quad ifunc 
