Changeset View
Changeset View
Standalone View
Standalone View
llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
Show All 18 Lines | |||||
def IsNotPIC : Predicate<"!TM.isPositionIndependent()">; | def IsNotPIC : Predicate<"!TM.isPositionIndependent()">; | ||||
def HasAddr32 : Predicate<"!Subtarget->hasAddr64()">; | def HasAddr32 : Predicate<"!Subtarget->hasAddr64()">; | ||||
def HasAddr64 : Predicate<"Subtarget->hasAddr64()">; | def HasAddr64 : Predicate<"Subtarget->hasAddr64()">; | ||||
def HasSIMD128 : | def HasSIMD128 : | ||||
Predicate<"Subtarget->hasSIMD128()">, | Predicate<"Subtarget->hasSIMD128()">, | ||||
AssemblerPredicate<"FeatureSIMD128", "simd128">; | AssemblerPredicate<(all_of FeatureSIMD128), "simd128">; | ||||
def HasUnimplementedSIMD128 : | def HasUnimplementedSIMD128 : | ||||
Predicate<"Subtarget->hasUnimplementedSIMD128()">, | Predicate<"Subtarget->hasUnimplementedSIMD128()">, | ||||
AssemblerPredicate<"FeatureUnimplementedSIMD128", "unimplemented-simd128">; | AssemblerPredicate<(all_of FeatureUnimplementedSIMD128), "unimplemented-simd128">; | ||||
def HasAtomics : | def HasAtomics : | ||||
Predicate<"Subtarget->hasAtomics()">, | Predicate<"Subtarget->hasAtomics()">, | ||||
AssemblerPredicate<"FeatureAtomics", "atomics">; | AssemblerPredicate<(all_of FeatureAtomics), "atomics">; | ||||
def HasMultivalue : | def HasMultivalue : | ||||
Predicate<"Subtarget->hasMultivalue()">, | Predicate<"Subtarget->hasMultivalue()">, | ||||
AssemblerPredicate<"FeatureMultivalue", "multivalue">; | AssemblerPredicate<(all_of FeatureMultivalue), "multivalue">; | ||||
def HasNontrappingFPToInt : | def HasNontrappingFPToInt : | ||||
Predicate<"Subtarget->hasNontrappingFPToInt()">, | Predicate<"Subtarget->hasNontrappingFPToInt()">, | ||||
AssemblerPredicate<"FeatureNontrappingFPToInt", "nontrapping-fptoint">; | AssemblerPredicate<(all_of FeatureNontrappingFPToInt), "nontrapping-fptoint">; | ||||
def NotHasNontrappingFPToInt : | def NotHasNontrappingFPToInt : | ||||
Predicate<"!Subtarget->hasNontrappingFPToInt()">, | Predicate<"!Subtarget->hasNontrappingFPToInt()">, | ||||
AssemblerPredicate<"!FeatureNontrappingFPToInt", "nontrapping-fptoint">; | AssemblerPredicate<(all_of (not FeatureNontrappingFPToInt)), "nontrapping-fptoint">; | ||||
def HasSignExt : | def HasSignExt : | ||||
Predicate<"Subtarget->hasSignExt()">, | Predicate<"Subtarget->hasSignExt()">, | ||||
AssemblerPredicate<"FeatureSignExt", "sign-ext">; | AssemblerPredicate<(all_of FeatureSignExt), "sign-ext">; | ||||
def HasTailCall : | def HasTailCall : | ||||
Predicate<"Subtarget->hasTailCall()">, | Predicate<"Subtarget->hasTailCall()">, | ||||
AssemblerPredicate<"FeatureTailCall", "tail-call">; | AssemblerPredicate<(all_of FeatureTailCall), "tail-call">; | ||||
def HasExceptionHandling : | def HasExceptionHandling : | ||||
Predicate<"Subtarget->hasExceptionHandling()">, | Predicate<"Subtarget->hasExceptionHandling()">, | ||||
AssemblerPredicate<"FeatureExceptionHandling", "exception-handling">; | AssemblerPredicate<(all_of FeatureExceptionHandling), "exception-handling">; | ||||
def HasBulkMemory : | def HasBulkMemory : | ||||
Predicate<"Subtarget->hasBulkMemory()">, | Predicate<"Subtarget->hasBulkMemory()">, | ||||
AssemblerPredicate<"FeatureBulkMemory", "bulk-memory">; | AssemblerPredicate<(all_of FeatureBulkMemory), "bulk-memory">; | ||||
def HasReferenceTypes : | def HasReferenceTypes : | ||||
Predicate<"Subtarget->hasReferenceTypes()">, | Predicate<"Subtarget->hasReferenceTypes()">, | ||||
AssemblerPredicate<"FeatureReferenceTypes", "reference-types">; | AssemblerPredicate<(all_of FeatureReferenceTypes), "reference-types">; | ||||
//===----------------------------------------------------------------------===// | //===----------------------------------------------------------------------===// | ||||
// WebAssembly-specific DAG Node Types. | // WebAssembly-specific DAG Node Types. | ||||
//===----------------------------------------------------------------------===// | //===----------------------------------------------------------------------===// | ||||
def SDT_WebAssemblyCallSeqStart : SDCallSeqStart<[SDTCisVT<0, iPTR>, | def SDT_WebAssemblyCallSeqStart : SDCallSeqStart<[SDTCisVT<0, iPTR>, | ||||
SDTCisVT<1, iPTR>]>; | SDTCisVT<1, iPTR>]>; | ||||
def SDT_WebAssemblyCallSeqEnd : | def SDT_WebAssemblyCallSeqEnd : | ||||
▲ Show 20 Lines • Show All 270 Lines • Show Last 20 Lines |