avx1-i32x4 implementation as sse4-i32x4 with avx target-feature flag
This commit is contained in:
21
builtins.cpp
21
builtins.cpp
@@ -942,11 +942,22 @@ DefineStdlib(SymbolTable *symbolTable, llvm::LLVMContext *ctx, llvm::Module *mod
|
||||
case Target::AVX: {
|
||||
switch (g->target->getVectorWidth()) {
|
||||
case 4:
|
||||
if (runtime32) {
|
||||
EXPORT_MODULE(builtins_bitcode_avx1_i64x4_32bit);
|
||||
}
|
||||
else {
|
||||
EXPORT_MODULE(builtins_bitcode_avx1_i64x4_64bit);
|
||||
if (g->target->getDataTypeWidth() == 32) {
|
||||
if (runtime32) {
|
||||
EXPORT_MODULE(builtins_bitcode_sse4_32bit);
|
||||
}
|
||||
else {
|
||||
EXPORT_MODULE(builtins_bitcode_sse4_64bit);
|
||||
}
|
||||
} else if (g->target->getDataTypeWidth() == 64) {
|
||||
if (runtime32) {
|
||||
EXPORT_MODULE(builtins_bitcode_avx1_i64x4_32bit);
|
||||
}
|
||||
else {
|
||||
EXPORT_MODULE(builtins_bitcode_avx1_i64x4_64bit);
|
||||
}
|
||||
} else {
|
||||
FATAL("logic error in DefineStdlib");
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
|
||||
Reference in New Issue
Block a user