* This file is part of the MindStudio project.
* Copyright (c) 2025 Huawei Technologies Co.,Ltd.
*
* MindStudio is licensed under Mulan PSL v2.
* You can use this software according to the terms and conditions of the Mulan PSL v2.
* You may obtain a copy of Mulan PSL v2 at:
*
* http://license.coscl.org.cn/MulanPSL2
*
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
* See the Mulan PSL v2 for more details.
* ------------------------------------------------------------------------- */
#ifndef CCEC_DEFINES_H
#define CCEC_DEFINES_H
#if defined(__CCE_IS_AICORE__) && __CCE_IS_AICORE__ == 1
#define __aicore__ [aicore]
#define pad_t uint32_t
#define bm_t uint32_t
#define addr_cal_mode_t uint32_t
#else
#ifndef __aicore__
#define __aicore__
#endif
#ifndef __DAV_C220__
#define __DAV_C220__
#endif
#ifndef __DAV_C220_VEC__
#define __DAV_C220_VEC__
#endif
#ifndef __DAV_C220_CUBE__
#define __DAV_C220_CUBE__
#endif
#ifndef __ubuf__
#define __ubuf__
#endif
#ifndef __cbuf__
#define __cbuf__
#endif
#ifndef __ca__
#define __ca__
#endif
#ifndef __cb__
#define __cb__
#endif
#ifndef __cc__
#define __cc__
#endif
#ifndef __gm__
#define __gm__
#endif
#ifndef __bf16
struct Bf16 {
char val[2];
};
#define __bf16 struct Bf16
#endif
#ifndef bm_t
#define bm_t ByteMode
#endif
#ifndef pad_t
#define pad_t uint32_t
#endif
#ifndef addr_cal_mode_t
#define addr_cal_mode_t uint32_t
#endif
#ifndef half
struct Half {
char val[2];
};
#define half struct Half
#endif
#ifndef __simt_callee__
#define __simt_callee__
#endif
#endif
#endif