================
@@ -4725,6 +4725,12 @@ def HLSLMad : LangBuiltin<"HLSL_LANG"> {
let Prototype = "void(...)";
}
+def HLSLNormalize : LangBuiltin<"HLSL_LANG"> {
+ let Spellings = ["__builtin_hlsl_normalize"];
----------------
bob80905 wrote:
I don't believe normalize is an elementwise operation.
"elementwise" semantically means "for each element". We have operations like
elementwise_log, and elementwise_pow, etc. What they do is apply a specific
binary operation to each element in a vector. Applying log to each element of a
vector is applying log "elementwise", for each element.
The normalize operation can never be applied to a singular element in a vector,
it doesn't make sense to normalize a single vector element. Normalization
always applies to the whole vector, although what is actually happening is a
division across each element in the vector.
So I don't think elementwise_normalize makes sense, because it doesn't make
sense to normalize a singular vector element, say a float.
https://github.com/llvm/llvm-project/pull/102683
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits