已合并
新增SIMT max、min接口 #3539
zhangshunwei2创建于 6月25日
新增SIMT max、min接口 #3539
已合并
共 1 个文件变更+85-0
| @@ -251,6 +251,91 @@ __SIMT_DEVICE_FUNCTIONS_DECL__ inline float fdividef(float x, float y); | |||
| 251 | 251 | ||
| 252 | __SIMT_DEVICE_FUNCTIONS_DECL__ inline int signbit(float x); | 252 | __SIMT_DEVICE_FUNCTIONS_DECL__ inline int signbit(float x); |
| 253 | 253 | ||
| 254 | +#ifndef __NPU_COMPILER_INTERNAL_PURE_SIMT__ | ||
| 255 | +#if (__NPU_ARCH__ == 3510) | ||
| 256 | +#ifndef ASCENDC_CPU_DEBUG | ||
| 257 | +static __callee__ long long max(long long x, long long y); | ||
| 258 | + | ||
| 259 | +static __callee__ unsigned long long max(unsigned long long x, unsigned long long y); | ||
| 260 | + | ||
| 261 | +static __callee__ unsigned int max(unsigned int x, unsigned int y); | ||
| 262 | + | ||
| 263 | +static __callee__ long max(long x, long y); | ||
| 264 | + | ||
| 265 | +static __callee__ int max(int x, int y); | ||
| 266 | + | ||
| 267 | +static __callee__ short max(short x, short y); | ||
| 268 | + | ||
| 269 | +static __callee__ char max(char x, char y); | ||
| 270 | + | ||
| 271 | +static __callee__ unsigned long max(unsigned long x, unsigned long y); | ||
| 272 | + | ||
| 273 | +static __callee__ unsigned short max(unsigned short x, unsigned short y); | ||
| 274 | + | ||
| 275 | +static __callee__ unsigned char max(unsigned char x, unsigned char y); | ||
| 276 | + | ||
| 277 | +static __callee__ long long min(long long x, long long y); | ||
| 278 | + | ||
| 279 | +static __callee__ unsigned long long min(unsigned long long x, unsigned long long y); | ||
| 280 | + | ||
| 281 | +static __callee__ unsigned int min(unsigned int x, unsigned int y); | ||
| 282 | + | ||
| 283 | +static __callee__ long min(long x, long y); | ||
| 284 | + | ||
| 285 | +static __callee__ int min(int x, int y); | ||
| 286 | + | ||
| 287 | +static __callee__ short min(short x, short y); | ||
| 288 | + | ||
| 289 | +static __callee__ char min(char x, char y); | ||
| 290 | + | ||
| 291 | +static __callee__ unsigned long min(unsigned long x, unsigned long y); | ||
| 292 | + | ||
| 293 | +static __callee__ unsigned short min(unsigned short x, unsigned short y); | ||
| 294 | + | ||
| 295 | +static __callee__ unsigned char min(unsigned char x, unsigned char y); | ||
| 296 | +#endif | ||
| 297 | +#endif | ||
| 298 | +#else | ||
| 299 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ long long max(long long x, long long y); | ||
| 300 | + | ||
| 301 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned long long max(unsigned long long x, unsigned long long y); | ||
| 302 | + | ||
| 303 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned int max(unsigned int x, unsigned int y); | ||
| 304 | + | ||
| 305 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ long max(long x, long y); | ||
| 306 | + | ||
| 307 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ int max(int x, int y); | ||
| 308 | + | ||
| 309 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ short max(short x, short y); | ||
| 310 | + | ||
| 311 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ char max(char x, char y); | ||
| 312 | + | ||
| 313 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned long max(unsigned long x, unsigned long y); | ||
| 314 | + | ||
| 315 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned short max(unsigned short x, unsigned short y); | ||
| 316 | + | ||
| 317 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned char max(unsigned char x, unsigned char y); | ||
| 318 | + | ||
| 319 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ long long min(long long x, long long y); | ||
| 320 | + | ||
| 321 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned long long min(unsigned long long x, unsigned long long y); | ||
| 322 | + | ||
| 323 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned int min(unsigned int x, unsigned int y); | ||
| 324 | + | ||
| 325 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ long min(long x, long y); | ||
| 326 | + | ||
| 327 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ int min(int x, int y); | ||
| 328 | + | ||
| 329 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ short min(short x, short y); | ||
| 330 | + | ||
| 331 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ char min(char x, char y); | ||
| 332 | + | ||
| 333 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned long min(unsigned long x, unsigned long y); | ||
| 334 | + | ||
| 335 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned short min(unsigned short x, unsigned short y); | ||
| 336 | + | ||
| 337 | +static __SIMT_DEVICE_FUNCTIONS_DECL__ unsigned char min(unsigned char x, unsigned char y); | ||
| 338 | +#endif | ||
| 254 | #include "impl/simt_api/math_functions_impl.h" | 339 | #include "impl/simt_api/math_functions_impl.h" |
| 255 | 340 | ||
| 256 | #if defined(__UNDEF_ASCENDC_INCLUDE_INTERNAL_HEADERS_MATH_FUNCTIONS_H__) | 341 | #if defined(__UNDEF_ASCENDC_INCLUDE_INTERNAL_HEADERS_MATH_FUNCTIONS_H__) |