Sfoglia il codice sorgente

Swap `reduce_any` and `reduce_all`

`llvm.vector.reduce.or` will return true if any lane is true.
`llvm.vector.reduce.and` will return true if all lanes are true.
Feoramund 1 anno fa
parent
commit
e27a424f4d
1 ha cambiato i file con 2 aggiunte e 2 eliminazioni
  1. 2 2
      src/llvm_backend_proc.cpp

+ 2 - 2
src/llvm_backend_proc.cpp

@@ -1532,8 +1532,8 @@ gb_internal lbValue lb_build_builtin_simd_proc(lbProcedure *p, Ast *expr, TypeAn
 		{
 			char const *name = nullptr;
 			switch (builtin_id) {
-			case BuiltinProc_simd_reduce_any: name = "llvm.vector.reduce.and"; break;
-			case BuiltinProc_simd_reduce_all: name = "llvm.vector.reduce.or";  break;
+			case BuiltinProc_simd_reduce_any: name = "llvm.vector.reduce.or";  break;
+			case BuiltinProc_simd_reduce_all: name = "llvm.vector.reduce.and"; break;
 			}
 
 			LLVMTypeRef types[1] = { lb_type(p->module, arg0.type) };