mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-02-13 05:40:59 +00:00
![Tom Stellard](/assets/img/avatar_default.png)
configure.py allows overloading *.cl with *.ll, but will only ever build the first file listed in SOURCES of ${file}.cl and ${file}.ll add_sat, sub_sat, (and the soon to be submitted clz) all define interfaces in ${function_name}.ll which are implemented in ${function_name}_impl.ll. Renaming the interface files is enough to get them to build again, fixing CL usage of these functions. Tested on clover/r600g. Patch by: Aaron Watry llvm-svn: 185000
56 lines
1.6 KiB
LLVM
56 lines
1.6 KiB
LLVM
declare i8 @__clc_add_sat_impl_s8(i8 %x, i8 %y)
|
|
|
|
define i8 @__clc_add_sat_s8(i8 %x, i8 %y) nounwind readnone alwaysinline {
|
|
%call = call i8 @__clc_add_sat_impl_s8(i8 %x, i8 %y)
|
|
ret i8 %call
|
|
}
|
|
|
|
declare i8 @__clc_add_sat_impl_u8(i8 %x, i8 %y)
|
|
|
|
define i8 @__clc_add_sat_u8(i8 %x, i8 %y) nounwind readnone alwaysinline {
|
|
%call = call i8 @__clc_add_sat_impl_u8(i8 %x, i8 %y)
|
|
ret i8 %call
|
|
}
|
|
|
|
declare i16 @__clc_add_sat_impl_s16(i16 %x, i16 %y)
|
|
|
|
define i16 @__clc_add_sat_s16(i16 %x, i16 %y) nounwind readnone alwaysinline {
|
|
%call = call i16 @__clc_add_sat_impl_s16(i16 %x, i16 %y)
|
|
ret i16 %call
|
|
}
|
|
|
|
declare i16 @__clc_add_sat_impl_u16(i16 %x, i16 %y)
|
|
|
|
define i16 @__clc_add_sat_u16(i16 %x, i16 %y) nounwind readnone alwaysinline {
|
|
%call = call i16 @__clc_add_sat_impl_u16(i16 %x, i16 %y)
|
|
ret i16 %call
|
|
}
|
|
|
|
declare i32 @__clc_add_sat_impl_s32(i32 %x, i32 %y)
|
|
|
|
define i32 @__clc_add_sat_s32(i32 %x, i32 %y) nounwind readnone alwaysinline {
|
|
%call = call i32 @__clc_add_sat_impl_s32(i32 %x, i32 %y)
|
|
ret i32 %call
|
|
}
|
|
|
|
declare i32 @__clc_add_sat_impl_u32(i32 %x, i32 %y)
|
|
|
|
define i32 @__clc_add_sat_u32(i32 %x, i32 %y) nounwind readnone alwaysinline {
|
|
%call = call i32 @__clc_add_sat_impl_u32(i32 %x, i32 %y)
|
|
ret i32 %call
|
|
}
|
|
|
|
declare i64 @__clc_add_sat_impl_s64(i64 %x, i64 %y)
|
|
|
|
define i64 @__clc_add_sat_s64(i64 %x, i64 %y) nounwind readnone alwaysinline {
|
|
%call = call i64 @__clc_add_sat_impl_s64(i64 %x, i64 %y)
|
|
ret i64 %call
|
|
}
|
|
|
|
declare i64 @__clc_add_sat_impl_u64(i64 %x, i64 %y)
|
|
|
|
define i64 @__clc_add_sat_u64(i64 %x, i64 %y) nounwind readnone alwaysinline {
|
|
%call = call i64 @__clc_add_sat_impl_u64(i64 %x, i64 %y)
|
|
ret i64 %call
|
|
}
|