Skip to content

Commit

Permalink
[Clang][XTHeadVector] wrappers of vundefined and vreinterpret mis…
Browse files Browse the repository at this point in the history
…c intrinsics
  • Loading branch information
imkiva committed Jun 3, 2024
1 parent 8c837bc commit ccde18f
Show file tree
Hide file tree
Showing 3 changed files with 1,677 additions and 0 deletions.
130 changes: 130 additions & 0 deletions clang/include/clang/Basic/riscv_vector_xtheadv_wrappers.td
Original file line number Diff line number Diff line change
Expand Up @@ -6191,3 +6191,133 @@ let HeaderCode =

}] in
def th_vector_permutation_wrapper_macros: RVVHeader;

let HeaderCode = [{
// Vector utility functions
#define __riscv_vundefined_f16m1() __riscv_th_vundefined_f16m1()
#define __riscv_vundefined_f16m2() __riscv_th_vundefined_f16m2()
#define __riscv_vundefined_f16m4() __riscv_th_vundefined_f16m4()
#define __riscv_vundefined_f16m8() __riscv_th_vundefined_f16m8()
#define __riscv_vundefined_f32m1() __riscv_th_vundefined_f32m1()
#define __riscv_vundefined_f32m2() __riscv_th_vundefined_f32m2()
#define __riscv_vundefined_f32m4() __riscv_th_vundefined_f32m4()
#define __riscv_vundefined_f32m8() __riscv_th_vundefined_f32m8()
#define __riscv_vundefined_f64m1() __riscv_th_vundefined_f64m1()
#define __riscv_vundefined_f64m2() __riscv_th_vundefined_f64m2()
#define __riscv_vundefined_f64m4() __riscv_th_vundefined_f64m4()
#define __riscv_vundefined_f64m8() __riscv_th_vundefined_f64m8()
#define __riscv_vundefined_i8m1() __riscv_th_vundefined_i8m1()
#define __riscv_vundefined_i8m2() __riscv_th_vundefined_i8m2()
#define __riscv_vundefined_i8m4() __riscv_th_vundefined_i8m4()
#define __riscv_vundefined_i8m8() __riscv_th_vundefined_i8m8()
#define __riscv_vundefined_i16m1() __riscv_th_vundefined_i16m1()
#define __riscv_vundefined_i16m2() __riscv_th_vundefined_i16m2()
#define __riscv_vundefined_i16m4() __riscv_th_vundefined_i16m4()
#define __riscv_vundefined_i16m8() __riscv_th_vundefined_i16m8()
#define __riscv_vundefined_i32m1() __riscv_th_vundefined_i32m1()
#define __riscv_vundefined_i32m2() __riscv_th_vundefined_i32m2()
#define __riscv_vundefined_i32m4() __riscv_th_vundefined_i32m4()
#define __riscv_vundefined_i32m8() __riscv_th_vundefined_i32m8()
#define __riscv_vundefined_i64m1() __riscv_th_vundefined_i64m1()
#define __riscv_vundefined_i64m2() __riscv_th_vundefined_i64m2()
#define __riscv_vundefined_i64m4() __riscv_th_vundefined_i64m4()
#define __riscv_vundefined_i64m8() __riscv_th_vundefined_i64m8()
#define __riscv_vundefined_u8m1() __riscv_th_vundefined_u8m1()
#define __riscv_vundefined_u8m2() __riscv_th_vundefined_u8m2()
#define __riscv_vundefined_u8m4() __riscv_th_vundefined_u8m4()
#define __riscv_vundefined_u8m8() __riscv_th_vundefined_u8m8()
#define __riscv_vundefined_u16m1() __riscv_th_vundefined_u16m1()
#define __riscv_vundefined_u16m2() __riscv_th_vundefined_u16m2()
#define __riscv_vundefined_u16m4() __riscv_th_vundefined_u16m4()
#define __riscv_vundefined_u16m8() __riscv_th_vundefined_u16m8()
#define __riscv_vundefined_u32m1() __riscv_th_vundefined_u32m1()
#define __riscv_vundefined_u32m2() __riscv_th_vundefined_u32m2()
#define __riscv_vundefined_u32m4() __riscv_th_vundefined_u32m4()
#define __riscv_vundefined_u32m8() __riscv_th_vundefined_u32m8()
#define __riscv_vundefined_u64m1() __riscv_th_vundefined_u64m1()
#define __riscv_vundefined_u64m2() __riscv_th_vundefined_u64m2()
#define __riscv_vundefined_u64m4() __riscv_th_vundefined_u64m4()
#define __riscv_vundefined_u64m8() __riscv_th_vundefined_u64m8()

#define __riscv_vreinterpret_v_i8m1_u8m1(src) __riscv_th_vreinterpret_v_i8m1_u8m1(src)
#define __riscv_vreinterpret_v_i8m2_u8m2(src) __riscv_th_vreinterpret_v_i8m2_u8m2(src)
#define __riscv_vreinterpret_v_i8m4_u8m4(src) __riscv_th_vreinterpret_v_i8m4_u8m4(src)
#define __riscv_vreinterpret_v_i8m8_u8m8(src) __riscv_th_vreinterpret_v_i8m8_u8m8(src)
#define __riscv_vreinterpret_v_u8m1_i8m1(src) __riscv_th_vreinterpret_v_u8m1_i8m1(src)
#define __riscv_vreinterpret_v_u8m2_i8m2(src) __riscv_th_vreinterpret_v_u8m2_i8m2(src)
#define __riscv_vreinterpret_v_u8m4_i8m4(src) __riscv_th_vreinterpret_v_u8m4_i8m4(src)
#define __riscv_vreinterpret_v_u8m8_i8m8(src) __riscv_th_vreinterpret_v_u8m8_i8m8(src)
#define __riscv_vreinterpret_v_i16m1_f16m1(src) __riscv_th_vreinterpret_v_i16m1_f16m1(src)
#define __riscv_vreinterpret_v_i16m2_f16m2(src) __riscv_th_vreinterpret_v_i16m2_f16m2(src)
#define __riscv_vreinterpret_v_i16m4_f16m4(src) __riscv_th_vreinterpret_v_i16m4_f16m4(src)
#define __riscv_vreinterpret_v_i16m8_f16m8(src) __riscv_th_vreinterpret_v_i16m8_f16m8(src)
#define __riscv_vreinterpret_v_u16m1_f16m1(src) __riscv_th_vreinterpret_v_u16m1_f16m1(src)
#define __riscv_vreinterpret_v_u16m2_f16m2(src) __riscv_th_vreinterpret_v_u16m2_f16m2(src)
#define __riscv_vreinterpret_v_u16m4_f16m4(src) __riscv_th_vreinterpret_v_u16m4_f16m4(src)
#define __riscv_vreinterpret_v_u16m8_f16m8(src) __riscv_th_vreinterpret_v_u16m8_f16m8(src)
#define __riscv_vreinterpret_v_i16m1_u16m1(src) __riscv_th_vreinterpret_v_i16m1_u16m1(src)
#define __riscv_vreinterpret_v_i16m2_u16m2(src) __riscv_th_vreinterpret_v_i16m2_u16m2(src)
#define __riscv_vreinterpret_v_i16m4_u16m4(src) __riscv_th_vreinterpret_v_i16m4_u16m4(src)
#define __riscv_vreinterpret_v_i16m8_u16m8(src) __riscv_th_vreinterpret_v_i16m8_u16m8(src)
#define __riscv_vreinterpret_v_u16m1_i16m1(src) __riscv_th_vreinterpret_v_u16m1_i16m1(src)
#define __riscv_vreinterpret_v_u16m2_i16m2(src) __riscv_th_vreinterpret_v_u16m2_i16m2(src)
#define __riscv_vreinterpret_v_u16m4_i16m4(src) __riscv_th_vreinterpret_v_u16m4_i16m4(src)
#define __riscv_vreinterpret_v_u16m8_i16m8(src) __riscv_th_vreinterpret_v_u16m8_i16m8(src)
#define __riscv_vreinterpret_v_f16m1_i16m1(src) __riscv_th_vreinterpret_v_f16m1_i16m1(src)
#define __riscv_vreinterpret_v_f16m2_i16m2(src) __riscv_th_vreinterpret_v_f16m2_i16m2(src)
#define __riscv_vreinterpret_v_f16m4_i16m4(src) __riscv_th_vreinterpret_v_f16m4_i16m4(src)
#define __riscv_vreinterpret_v_f16m8_i16m8(src) __riscv_th_vreinterpret_v_f16m8_i16m8(src)
#define __riscv_vreinterpret_v_f16m1_u16m1(src) __riscv_th_vreinterpret_v_f16m1_u16m1(src)
#define __riscv_vreinterpret_v_f16m2_u16m2(src) __riscv_th_vreinterpret_v_f16m2_u16m2(src)
#define __riscv_vreinterpret_v_f16m4_u16m4(src) __riscv_th_vreinterpret_v_f16m4_u16m4(src)
#define __riscv_vreinterpret_v_f16m8_u16m8(src) __riscv_th_vreinterpret_v_f16m8_u16m8(src)
#define __riscv_vreinterpret_v_i32m1_f32m1(src) __riscv_th_vreinterpret_v_i32m1_f32m1(src)
#define __riscv_vreinterpret_v_i32m2_f32m2(src) __riscv_th_vreinterpret_v_i32m2_f32m2(src)
#define __riscv_vreinterpret_v_i32m4_f32m4(src) __riscv_th_vreinterpret_v_i32m4_f32m4(src)
#define __riscv_vreinterpret_v_i32m8_f32m8(src) __riscv_th_vreinterpret_v_i32m8_f32m8(src)
#define __riscv_vreinterpret_v_u32m1_f32m1(src) __riscv_th_vreinterpret_v_u32m1_f32m1(src)
#define __riscv_vreinterpret_v_u32m2_f32m2(src) __riscv_th_vreinterpret_v_u32m2_f32m2(src)
#define __riscv_vreinterpret_v_u32m4_f32m4(src) __riscv_th_vreinterpret_v_u32m4_f32m4(src)
#define __riscv_vreinterpret_v_u32m8_f32m8(src) __riscv_th_vreinterpret_v_u32m8_f32m8(src)
#define __riscv_vreinterpret_v_i32m1_u32m1(src) __riscv_th_vreinterpret_v_i32m1_u32m1(src)
#define __riscv_vreinterpret_v_i32m2_u32m2(src) __riscv_th_vreinterpret_v_i32m2_u32m2(src)
#define __riscv_vreinterpret_v_i32m4_u32m4(src) __riscv_th_vreinterpret_v_i32m4_u32m4(src)
#define __riscv_vreinterpret_v_i32m8_u32m8(src) __riscv_th_vreinterpret_v_i32m8_u32m8(src)
#define __riscv_vreinterpret_v_u32m1_i32m1(src) __riscv_th_vreinterpret_v_u32m1_i32m1(src)
#define __riscv_vreinterpret_v_u32m2_i32m2(src) __riscv_th_vreinterpret_v_u32m2_i32m2(src)
#define __riscv_vreinterpret_v_u32m4_i32m4(src) __riscv_th_vreinterpret_v_u32m4_i32m4(src)
#define __riscv_vreinterpret_v_u32m8_i32m8(src) __riscv_th_vreinterpret_v_u32m8_i32m8(src)
#define __riscv_vreinterpret_v_f32m1_i32m1(src) __riscv_th_vreinterpret_v_f32m1_i32m1(src)
#define __riscv_vreinterpret_v_f32m2_i32m2(src) __riscv_th_vreinterpret_v_f32m2_i32m2(src)
#define __riscv_vreinterpret_v_f32m4_i32m4(src) __riscv_th_vreinterpret_v_f32m4_i32m4(src)
#define __riscv_vreinterpret_v_f32m8_i32m8(src) __riscv_th_vreinterpret_v_f32m8_i32m8(src)
#define __riscv_vreinterpret_v_f32m1_u32m1(src) __riscv_th_vreinterpret_v_f32m1_u32m1(src)
#define __riscv_vreinterpret_v_f32m2_u32m2(src) __riscv_th_vreinterpret_v_f32m2_u32m2(src)
#define __riscv_vreinterpret_v_f32m4_u32m4(src) __riscv_th_vreinterpret_v_f32m4_u32m4(src)
#define __riscv_vreinterpret_v_f32m8_u32m8(src) __riscv_th_vreinterpret_v_f32m8_u32m8(src)
#define __riscv_vreinterpret_v_i64m1_f64m1(src) __riscv_th_vreinterpret_v_i64m1_f64m1(src)
#define __riscv_vreinterpret_v_i64m2_f64m2(src) __riscv_th_vreinterpret_v_i64m2_f64m2(src)
#define __riscv_vreinterpret_v_i64m4_f64m4(src) __riscv_th_vreinterpret_v_i64m4_f64m4(src)
#define __riscv_vreinterpret_v_i64m8_f64m8(src) __riscv_th_vreinterpret_v_i64m8_f64m8(src)
#define __riscv_vreinterpret_v_u64m1_f64m1(src) __riscv_th_vreinterpret_v_u64m1_f64m1(src)
#define __riscv_vreinterpret_v_u64m2_f64m2(src) __riscv_th_vreinterpret_v_u64m2_f64m2(src)
#define __riscv_vreinterpret_v_u64m4_f64m4(src) __riscv_th_vreinterpret_v_u64m4_f64m4(src)
#define __riscv_vreinterpret_v_u64m8_f64m8(src) __riscv_th_vreinterpret_v_u64m8_f64m8(src)
#define __riscv_vreinterpret_v_i64m1_u64m1(src) __riscv_th_vreinterpret_v_i64m1_u64m1(src)
#define __riscv_vreinterpret_v_i64m2_u64m2(src) __riscv_th_vreinterpret_v_i64m2_u64m2(src)
#define __riscv_vreinterpret_v_i64m4_u64m4(src) __riscv_th_vreinterpret_v_i64m4_u64m4(src)
#define __riscv_vreinterpret_v_i64m8_u64m8(src) __riscv_th_vreinterpret_v_i64m8_u64m8(src)
#define __riscv_vreinterpret_v_u64m1_i64m1(src) __riscv_th_vreinterpret_v_u64m1_i64m1(src)
#define __riscv_vreinterpret_v_u64m2_i64m2(src) __riscv_th_vreinterpret_v_u64m2_i64m2(src)
#define __riscv_vreinterpret_v_u64m4_i64m4(src) __riscv_th_vreinterpret_v_u64m4_i64m4(src)
#define __riscv_vreinterpret_v_u64m8_i64m8(src) __riscv_th_vreinterpret_v_u64m8_i64m8(src)
#define __riscv_vreinterpret_v_f64m1_i64m1(src) __riscv_th_vreinterpret_v_f64m1_i64m1(src)
#define __riscv_vreinterpret_v_f64m2_i64m2(src) __riscv_th_vreinterpret_v_f64m2_i64m2(src)
#define __riscv_vreinterpret_v_f64m4_i64m4(src) __riscv_th_vreinterpret_v_f64m4_i64m4(src)
#define __riscv_vreinterpret_v_f64m8_i64m8(src) __riscv_th_vreinterpret_v_f64m8_i64m8(src)
#define __riscv_vreinterpret_v_f64m1_u64m1(src) __riscv_th_vreinterpret_v_f64m1_u64m1(src)
#define __riscv_vreinterpret_v_f64m2_u64m2(src) __riscv_th_vreinterpret_v_f64m2_u64m2(src)
#define __riscv_vreinterpret_v_f64m4_u64m4(src) __riscv_th_vreinterpret_v_f64m4_u64m4(src)
#define __riscv_vreinterpret_v_f64m8_u64m8(src) __riscv_th_vreinterpret_v_f64m8_u64m8(src)
}] in
def th_vector_misc_wrapper_macros: RVVHeader;
Loading

0 comments on commit ccde18f

Please sign in to comment.