/*
 * Copyright (C) Huawei Technologies Co., Ltd. 2023-2024. All rights reserved.
 * SPDX-License-Identifier: MIT
 */

#ifndef VATOMIC_CONFIG_U32_RLX_H
#define VATOMIC_CONFIG_U32_RLX_H
/* !!!Warning: File generated by tmplr; DO NOT EDIT.!!! */

#include <vsync/atomic/await.h>

#if defined(VATOMIC_ENABLE_ATOMIC_RLX)

    #define VATOMIC32_READ
static inline vuint32_t
vatomic32_read(const vatomic32_t *a)
{
    return vatomic32_read_rlx(a);
}
    #define VATOMIC32_READ_ACQ
static inline vuint32_t
vatomic32_read_acq(const vatomic32_t *a)
{
    return vatomic32_read_rlx(a);
}

    #define VATOMIC32_WRITE
static inline void
vatomic32_write(vatomic32_t *a, vuint32_t v)
{
    vatomic32_write_rlx(a, v);
}
    #define VATOMIC32_WRITE_REL
static inline void
vatomic32_write_rel(vatomic32_t *a, vuint32_t v)
{
    vatomic32_write_rlx(a, v);
}

    #define VATOMIC32_XCHG
static inline vuint32_t
vatomic32_xchg(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_xchg_rlx(a, v);
}
    #define VATOMIC32_XCHG_ACQ
static inline vuint32_t
vatomic32_xchg_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_xchg_rlx(a, v);
}
    #define VATOMIC32_XCHG_REL
static inline vuint32_t
vatomic32_xchg_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_xchg_rlx(a, v);
}

    #define VATOMIC32_CMPXCHG
static inline vuint32_t
vatomic32_cmpxchg(vatomic32_t *a, vuint32_t e, vuint32_t v)
{
    return vatomic32_cmpxchg_rlx(a, e, v);
}
    #define VATOMIC32_CMPXCHG_ACQ
static inline vuint32_t
vatomic32_cmpxchg_acq(vatomic32_t *a, vuint32_t e, vuint32_t v)
{
    return vatomic32_cmpxchg_rlx(a, e, v);
}
    #define VATOMIC32_CMPXCHG_REL
static inline vuint32_t
vatomic32_cmpxchg_rel(vatomic32_t *a, vuint32_t e, vuint32_t v)
{
    return vatomic32_cmpxchg_rlx(a, e, v);
}

    #define VATOMIC32_GET_MAX
static inline vuint32_t
vatomic32_get_max(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_max_rlx(a, v);
}
    #define VATOMIC32_GET_AND
static inline vuint32_t
vatomic32_get_and(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_and_rlx(a, v);
}
    #define VATOMIC32_GET_OR
static inline vuint32_t
vatomic32_get_or(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_or_rlx(a, v);
}
    #define VATOMIC32_GET_XOR
static inline vuint32_t
vatomic32_get_xor(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_xor_rlx(a, v);
}
    #define VATOMIC32_GET_ADD
static inline vuint32_t
vatomic32_get_add(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_add_rlx(a, v);
}
    #define VATOMIC32_GET_SUB
static inline vuint32_t
vatomic32_get_sub(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_sub_rlx(a, v);
}
    #define VATOMIC32_MAX_GET
static inline vuint32_t
vatomic32_max_get(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_max_get_rlx(a, v);
}
    #define VATOMIC32_AND_GET
static inline vuint32_t
vatomic32_and_get(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_and_get_rlx(a, v);
}
    #define VATOMIC32_OR_GET
static inline vuint32_t
vatomic32_or_get(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_or_get_rlx(a, v);
}
    #define VATOMIC32_XOR_GET
static inline vuint32_t
vatomic32_xor_get(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_xor_get_rlx(a, v);
}
    #define VATOMIC32_ADD_GET
static inline vuint32_t
vatomic32_add_get(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_add_get_rlx(a, v);
}
    #define VATOMIC32_SUB_GET
static inline vuint32_t
vatomic32_sub_get(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_sub_get_rlx(a, v);
}
    #define VATOMIC32_GET_MAX_ACQ
static inline vuint32_t
vatomic32_get_max_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_max_rlx(a, v);
}
    #define VATOMIC32_GET_AND_ACQ
static inline vuint32_t
vatomic32_get_and_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_and_rlx(a, v);
}
    #define VATOMIC32_GET_OR_ACQ
static inline vuint32_t
vatomic32_get_or_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_or_rlx(a, v);
}
    #define VATOMIC32_GET_XOR_ACQ
static inline vuint32_t
vatomic32_get_xor_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_xor_rlx(a, v);
}
    #define VATOMIC32_GET_ADD_ACQ
static inline vuint32_t
vatomic32_get_add_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_add_rlx(a, v);
}
    #define VATOMIC32_GET_SUB_ACQ
static inline vuint32_t
vatomic32_get_sub_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_sub_rlx(a, v);
}
    #define VATOMIC32_MAX_GET_ACQ
static inline vuint32_t
vatomic32_max_get_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_max_get_rlx(a, v);
}
    #define VATOMIC32_AND_GET_ACQ
static inline vuint32_t
vatomic32_and_get_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_and_get_rlx(a, v);
}
    #define VATOMIC32_OR_GET_ACQ
static inline vuint32_t
vatomic32_or_get_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_or_get_rlx(a, v);
}
    #define VATOMIC32_XOR_GET_ACQ
static inline vuint32_t
vatomic32_xor_get_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_xor_get_rlx(a, v);
}
    #define VATOMIC32_ADD_GET_ACQ
static inline vuint32_t
vatomic32_add_get_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_add_get_rlx(a, v);
}
    #define VATOMIC32_SUB_GET_ACQ
static inline vuint32_t
vatomic32_sub_get_acq(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_sub_get_rlx(a, v);
}
    #define VATOMIC32_GET_MAX_REL
static inline vuint32_t
vatomic32_get_max_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_max_rlx(a, v);
}
    #define VATOMIC32_GET_AND_REL
static inline vuint32_t
vatomic32_get_and_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_and_rlx(a, v);
}
    #define VATOMIC32_GET_OR_REL
static inline vuint32_t
vatomic32_get_or_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_or_rlx(a, v);
}
    #define VATOMIC32_GET_XOR_REL
static inline vuint32_t
vatomic32_get_xor_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_xor_rlx(a, v);
}
    #define VATOMIC32_GET_ADD_REL
static inline vuint32_t
vatomic32_get_add_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_add_rlx(a, v);
}
    #define VATOMIC32_GET_SUB_REL
static inline vuint32_t
vatomic32_get_sub_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_get_sub_rlx(a, v);
}
    #define VATOMIC32_MAX_GET_REL
static inline vuint32_t
vatomic32_max_get_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_max_get_rlx(a, v);
}
    #define VATOMIC32_AND_GET_REL
static inline vuint32_t
vatomic32_and_get_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_and_get_rlx(a, v);
}
    #define VATOMIC32_OR_GET_REL
static inline vuint32_t
vatomic32_or_get_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_or_get_rlx(a, v);
}
    #define VATOMIC32_XOR_GET_REL
static inline vuint32_t
vatomic32_xor_get_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_xor_get_rlx(a, v);
}
    #define VATOMIC32_ADD_GET_REL
static inline vuint32_t
vatomic32_add_get_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_add_get_rlx(a, v);
}
    #define VATOMIC32_SUB_GET_REL
static inline vuint32_t
vatomic32_sub_get_rel(vatomic32_t *a, vuint32_t v)
{
    return vatomic32_sub_get_rlx(a, v);
}

    #define VATOMIC32_GET_INC
static inline vuint32_t
vatomic32_get_inc(vatomic32_t *a)
{
    return vatomic32_get_inc_rlx(a);
}
    #define VATOMIC32_INC_GET
static inline vuint32_t
vatomic32_inc_get(vatomic32_t *a)
{
    return vatomic32_inc_get_rlx(a);
}
    #define VATOMIC32_GET_DEC
static inline vuint32_t
vatomic32_get_dec(vatomic32_t *a)
{
    return vatomic32_get_dec_rlx(a);
}
    #define VATOMIC32_DEC_GET
static inline vuint32_t
vatomic32_dec_get(vatomic32_t *a)
{
    return vatomic32_dec_get_rlx(a);
}
    #define VATOMIC32_GET_INC_ACQ
static inline vuint32_t
vatomic32_get_inc_acq(vatomic32_t *a)
{
    return vatomic32_get_inc_rlx(a);
}
    #define VATOMIC32_INC_GET_ACQ
static inline vuint32_t
vatomic32_inc_get_acq(vatomic32_t *a)
{
    return vatomic32_inc_get_rlx(a);
}
    #define VATOMIC32_GET_DEC_ACQ
static inline vuint32_t
vatomic32_get_dec_acq(vatomic32_t *a)
{
    return vatomic32_get_dec_rlx(a);
}
    #define VATOMIC32_DEC_GET_ACQ
static inline vuint32_t
vatomic32_dec_get_acq(vatomic32_t *a)
{
    return vatomic32_dec_get_rlx(a);
}
    #define VATOMIC32_GET_INC_REL
static inline vuint32_t
vatomic32_get_inc_rel(vatomic32_t *a)
{
    return vatomic32_get_inc_rlx(a);
}
    #define VATOMIC32_INC_GET_REL
static inline vuint32_t
vatomic32_inc_get_rel(vatomic32_t *a)
{
    return vatomic32_inc_get_rlx(a);
}
    #define VATOMIC32_GET_DEC_REL
static inline vuint32_t
vatomic32_get_dec_rel(vatomic32_t *a)
{
    return vatomic32_get_dec_rlx(a);
}
    #define VATOMIC32_DEC_GET_REL
static inline vuint32_t
vatomic32_dec_get_rel(vatomic32_t *a)
{
    return vatomic32_dec_get_rlx(a);
}

    #define VATOMIC32_MAX
static inline void
vatomic32_max(vatomic32_t *a, vuint32_t v)
{
    vatomic32_max_rlx(a, v);
}
    #define VATOMIC32_AND
static inline void
vatomic32_and(vatomic32_t *a, vuint32_t v)
{
    vatomic32_and_rlx(a, v);
}
    #define VATOMIC32_OR
static inline void
vatomic32_or(vatomic32_t *a, vuint32_t v)
{
    vatomic32_or_rlx(a, v);
}
    #define VATOMIC32_XOR
static inline void
vatomic32_xor(vatomic32_t *a, vuint32_t v)
{
    vatomic32_xor_rlx(a, v);
}
    #define VATOMIC32_ADD
static inline void
vatomic32_add(vatomic32_t *a, vuint32_t v)
{
    vatomic32_add_rlx(a, v);
}
    #define VATOMIC32_SUB
static inline void
vatomic32_sub(vatomic32_t *a, vuint32_t v)
{
    vatomic32_sub_rlx(a, v);
}
    #define VATOMIC32_MAX_REL
static inline void
vatomic32_max_rel(vatomic32_t *a, vuint32_t v)
{
    vatomic32_max_rlx(a, v);
}
    #define VATOMIC32_AND_REL
static inline void
vatomic32_and_rel(vatomic32_t *a, vuint32_t v)
{
    vatomic32_and_rlx(a, v);
}
    #define VATOMIC32_OR_REL
static inline void
vatomic32_or_rel(vatomic32_t *a, vuint32_t v)
{
    vatomic32_or_rlx(a, v);
}
    #define VATOMIC32_XOR_REL
static inline void
vatomic32_xor_rel(vatomic32_t *a, vuint32_t v)
{
    vatomic32_xor_rlx(a, v);
}
    #define VATOMIC32_ADD_REL
static inline void
vatomic32_add_rel(vatomic32_t *a, vuint32_t v)
{
    vatomic32_add_rlx(a, v);
}
    #define VATOMIC32_SUB_REL
static inline void
vatomic32_sub_rel(vatomic32_t *a, vuint32_t v)
{
    vatomic32_sub_rlx(a, v);
}

    #define VATOMIC32_INC
static inline void
vatomic32_inc(vatomic32_t *a)
{
    vatomic32_inc_rlx(a);
}
    #define VATOMIC32_DEC
static inline void
vatomic32_dec(vatomic32_t *a)
{
    vatomic32_dec_rlx(a);
}
    #define VATOMIC32_INC_REL
static inline void
vatomic32_inc_rel(vatomic32_t *a)
{
    vatomic32_inc_rlx(a);
}
    #define VATOMIC32_DEC_REL
static inline void
vatomic32_dec_rel(vatomic32_t *a)
{
    vatomic32_dec_rlx(a);
}

    #define VATOMIC32_AWAIT_EQ
static inline vuint32_t
vatomic32_await_eq(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_eq_rlx(a, v);
}
    #define VATOMIC32_AWAIT_NEQ
static inline vuint32_t
vatomic32_await_neq(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_neq_rlx(a, v);
}
    #define VATOMIC32_AWAIT_LT
static inline vuint32_t
vatomic32_await_lt(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_lt_rlx(a, v);
}
    #define VATOMIC32_AWAIT_LE
static inline vuint32_t
vatomic32_await_le(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_le_rlx(a, v);
}
    #define VATOMIC32_AWAIT_GT
static inline vuint32_t
vatomic32_await_gt(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_gt_rlx(a, v);
}
    #define VATOMIC32_AWAIT_GE
static inline vuint32_t
vatomic32_await_ge(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_ge_rlx(a, v);
}
    #define VATOMIC32_AWAIT_EQ_ACQ
static inline vuint32_t
vatomic32_await_eq_acq(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_eq_rlx(a, v);
}
    #define VATOMIC32_AWAIT_NEQ_ACQ
static inline vuint32_t
vatomic32_await_neq_acq(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_neq_rlx(a, v);
}
    #define VATOMIC32_AWAIT_LT_ACQ
static inline vuint32_t
vatomic32_await_lt_acq(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_lt_rlx(a, v);
}
    #define VATOMIC32_AWAIT_LE_ACQ
static inline vuint32_t
vatomic32_await_le_acq(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_le_rlx(a, v);
}
    #define VATOMIC32_AWAIT_GT_ACQ
static inline vuint32_t
vatomic32_await_gt_acq(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_gt_rlx(a, v);
}
    #define VATOMIC32_AWAIT_GE_ACQ
static inline vuint32_t
vatomic32_await_ge_acq(const vatomic32_t *a, vuint32_t v)
{
    return vatomic32_await_ge_rlx(a, v);
}

    #define VATOMIC32_AWAIT_LE_ADD
static inline vuint32_t
vatomic32_await_le_add(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LE_ADD_ACQ
static inline vuint32_t
vatomic32_await_le_add_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LE_ADD_REL
static inline vuint32_t
vatomic32_await_le_add_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LE_SUB
static inline vuint32_t
vatomic32_await_le_sub(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LE_SUB_ACQ
static inline vuint32_t
vatomic32_await_le_sub_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LE_SUB_REL
static inline vuint32_t
vatomic32_await_le_sub_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LE_SET
static inline vuint32_t
vatomic32_await_le_set(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LE_SET_ACQ
static inline vuint32_t
vatomic32_await_le_set_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LE_SET_REL
static inline vuint32_t
vatomic32_await_le_set_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_le_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_ADD
static inline vuint32_t
vatomic32_await_lt_add(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_ADD_ACQ
static inline vuint32_t
vatomic32_await_lt_add_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_ADD_REL
static inline vuint32_t
vatomic32_await_lt_add_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_SUB
static inline vuint32_t
vatomic32_await_lt_sub(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_SUB_ACQ
static inline vuint32_t
vatomic32_await_lt_sub_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_SUB_REL
static inline vuint32_t
vatomic32_await_lt_sub_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_SET
static inline vuint32_t
vatomic32_await_lt_set(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_SET_ACQ
static inline vuint32_t
vatomic32_await_lt_set_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_LT_SET_REL
static inline vuint32_t
vatomic32_await_lt_set_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_lt_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_ADD
static inline vuint32_t
vatomic32_await_ge_add(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_ADD_ACQ
static inline vuint32_t
vatomic32_await_ge_add_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_ADD_REL
static inline vuint32_t
vatomic32_await_ge_add_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_SUB
static inline vuint32_t
vatomic32_await_ge_sub(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_SUB_ACQ
static inline vuint32_t
vatomic32_await_ge_sub_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_SUB_REL
static inline vuint32_t
vatomic32_await_ge_sub_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_SET
static inline vuint32_t
vatomic32_await_ge_set(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_SET_ACQ
static inline vuint32_t
vatomic32_await_ge_set_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GE_SET_REL
static inline vuint32_t
vatomic32_await_ge_set_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_ge_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_ADD
static inline vuint32_t
vatomic32_await_gt_add(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_ADD_ACQ
static inline vuint32_t
vatomic32_await_gt_add_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_ADD_REL
static inline vuint32_t
vatomic32_await_gt_add_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_SUB
static inline vuint32_t
vatomic32_await_gt_sub(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_SUB_ACQ
static inline vuint32_t
vatomic32_await_gt_sub_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_SUB_REL
static inline vuint32_t
vatomic32_await_gt_sub_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_SET
static inline vuint32_t
vatomic32_await_gt_set(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_SET_ACQ
static inline vuint32_t
vatomic32_await_gt_set_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_GT_SET_REL
static inline vuint32_t
vatomic32_await_gt_set_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_gt_set_rlx(a, c, v);
}

    #define VATOMIC32_AWAIT_NEQ_ADD
static inline vuint32_t
vatomic32_await_neq_add(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_NEQ_ADD_ACQ
static inline vuint32_t
vatomic32_await_neq_add_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_NEQ_ADD_REL
static inline vuint32_t
vatomic32_await_neq_add_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_NEQ_SUB
static inline vuint32_t
vatomic32_await_neq_sub(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_NEQ_SUB_ACQ
static inline vuint32_t
vatomic32_await_neq_sub_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_NEQ_SUB_REL
static inline vuint32_t
vatomic32_await_neq_sub_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_NEQ_SET
static inline vuint32_t
vatomic32_await_neq_set(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_NEQ_SET_ACQ
static inline vuint32_t
vatomic32_await_neq_set_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_NEQ_SET_REL
static inline vuint32_t
vatomic32_await_neq_set_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_neq_set_rlx(a, c, v);
}

    #define VATOMIC32_AWAIT_EQ_ADD
static inline vuint32_t
vatomic32_await_eq_add(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_EQ_ADD_ACQ
static inline vuint32_t
vatomic32_await_eq_add_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_EQ_ADD_REL
static inline vuint32_t
vatomic32_await_eq_add_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_add_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_EQ_SUB
static inline vuint32_t
vatomic32_await_eq_sub(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_EQ_SUB_ACQ
static inline vuint32_t
vatomic32_await_eq_sub_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_EQ_SUB_REL
static inline vuint32_t
vatomic32_await_eq_sub_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_sub_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_EQ_SET
static inline vuint32_t
vatomic32_await_eq_set(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_EQ_SET_ACQ
static inline vuint32_t
vatomic32_await_eq_set_acq(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_set_rlx(a, c, v);
}
    #define VATOMIC32_AWAIT_EQ_SET_REL
static inline vuint32_t
vatomic32_await_eq_set_rel(vatomic32_t *a, vuint32_t c, vuint32_t v)
{
    return vatomic32_await_eq_set_rlx(a, c, v);
}

#endif
#endif
