Lines Matching +full:half +full:- +full:precision
1 //===--- WebAssembly.cpp - Implement WebAssembly target feature support ---===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
11 //===----------------------------------------------------------------------===//
34 {"mvp"}, {"bleeding-edge"}, {"generic"}};
39 if (Name != "mvp" && Name != "experimental-mv") in setABI()
49 .Case("bulk-memory", HasBulkMemory) in hasFeature()
50 .Case("exception-handling", HasExceptionHandling) in hasFeature()
51 .Case("extended-const", HasExtendedConst) in hasFeature()
52 .Case("half-precision", HasHalfPrecision) in hasFeature()
55 .Case("mutable-globals", HasMutableGlobals) in hasFeature()
56 .Case("nontrapping-fptoint", HasNontrappingFPToInt) in hasFeature()
57 .Case("reference-types", HasReferenceTypes) in hasFeature()
58 .Case("relaxed-simd", SIMDLevel >= RelaxedSIMD) in hasFeature()
59 .Case("sign-ext", HasSignExt) in hasFeature()
61 .Case("tail-call", HasTailCall) in hasFeature()
117 Features["relaxed-simd"] = true; in setSIMDLevel()
134 Features["relaxed-simd"] = false; in setSIMDLevel()
144 else if (Name == "relaxed-simd") in setFeatureEnabled()
155 Features["mutable-globals"] = true; in initFeatureMap()
156 Features["reference-types"] = true; in initFeatureMap()
157 Features["sign-ext"] = true; in initFeatureMap()
162 Features["bulk-memory"] = true; in initFeatureMap()
163 Features["exception-handling"] = true; in initFeatureMap()
164 Features["extended-const"] = true; in initFeatureMap()
165 Features["half-precision"] = true; in initFeatureMap()
167 Features["nontrapping-fptoint"] = true; in initFeatureMap()
168 Features["tail-call"] = true; in initFeatureMap()
173 } else if (CPU == "bleeding-edge") { in initFeatureMap()
187 if (Feature == "-atomics") { in handleTargetFeatures()
191 if (Feature == "+bulk-memory") { in handleTargetFeatures()
195 if (Feature == "-bulk-memory") { in handleTargetFeatures()
199 if (Feature == "+exception-handling") { in handleTargetFeatures()
203 if (Feature == "-exception-handling") { in handleTargetFeatures()
207 if (Feature == "+extended-const") { in handleTargetFeatures()
211 if (Feature == "-extended-const") { in handleTargetFeatures()
215 if (Feature == "+half-precision") { in handleTargetFeatures()
220 if (Feature == "-half-precision") { in handleTargetFeatures()
228 if (Feature == "-multimemory") { in handleTargetFeatures()
236 if (Feature == "-multivalue") { in handleTargetFeatures()
240 if (Feature == "+mutable-globals") { in handleTargetFeatures()
244 if (Feature == "-mutable-globals") { in handleTargetFeatures()
248 if (Feature == "+nontrapping-fptoint") { in handleTargetFeatures()
252 if (Feature == "-nontrapping-fptoint") { in handleTargetFeatures()
256 if (Feature == "+reference-types") { in handleTargetFeatures()
260 if (Feature == "-reference-types") { in handleTargetFeatures()
264 if (Feature == "+relaxed-simd") { in handleTargetFeatures()
268 if (Feature == "-relaxed-simd") { in handleTargetFeatures()
269 SIMDLevel = std::min(SIMDLevel, SIMDEnum(RelaxedSIMD - 1)); in handleTargetFeatures()
272 if (Feature == "+sign-ext") { in handleTargetFeatures()
276 if (Feature == "-sign-ext") { in handleTargetFeatures()
284 if (Feature == "-simd128") { in handleTargetFeatures()
285 SIMDLevel = std::min(SIMDLevel, SIMDEnum(SIMD128 - 1)); in handleTargetFeatures()
288 if (Feature == "+tail-call") { in handleTargetFeatures()
292 if (Feature == "-tail-call") { in handleTargetFeatures()
298 << Feature << "-target-feature"; in handleTargetFeatures()
305 return llvm::ArrayRef(BuiltinInfo, clang::WebAssembly::LastTSBuiltin - in getTargetBuiltins()