[clang] [llvm] [WebAssembly] Implement prototype f16x8.splat instruction. (PR #93228)

Brendan Dahl via llvm-commits llvm-commits at lists.llvm.org
Thu May 23 15:22:46 PDT 2024


================
@@ -90,6 +90,7 @@ class LLVM_LIBRARY_VISIBILITY WebAssemblyTargetInfo : public TargetInfo {
 
   StringRef getABI() const override;
   bool setABI(const std::string &Name) override;
+  bool useFP16ConversionIntrinsics() const override { return false; }
----------------
brendandahl wrote:

Yeah, this is what causes clang to start outputting `half` types. I could conditionally enable this with `return !HasHalfPrecision;` instead. Though doing a quick test with scalar `__fp16` in c, the `half` types seems to work correctly regardless of this setting.

https://github.com/llvm/llvm-project/pull/93228


More information about the llvm-commits mailing list