/* autogenerated by gensyscalls.py */
#include <sys/linux-syscalls.h>

    .text
    .type fchownat, @function
    .globl fchownat
    .align 4

fchownat:

    /* get ready for additonal arg */
    mov.l   @r15, r0

    /* invoke trap */
    mov.l   0f, r3  /* trap num */
    trapa   #(5 + 0x10)

    /* check return value */
    cmp/pz  r0
    bt      __NR_fchownat_end

    /* keep error number */
    sts.l   pr, @-r15
    mov.l   1f, r1
    jsr     @r1
    mov     r0, r4
    lds.l   @r15+, pr

__NR_fchownat_end:
    rts
    nop

    .align  2
0:  .long   __NR_fchownat
1:  .long   __set_syscall_errno
