Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@jeehoonkang
Created March 3, 2016 15:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jeehoonkang/b1865dfc00c7046bc45f to your computer and use it in GitHub Desktop.
Save jeehoonkang/b1865dfc00c7046bc45f to your computer and use it in GitHub Desktop.
grep -ri unsafe llvm
./autoconf/configure.ac: AC_MSG_WARN([LLVM will be built thread-unsafe because atomic builtins are missing])
./bindings/go/llvm/bitreader.go: "unsafe"
./bindings/go/llvm/bitreader.go: defer C.free(unsafe.Pointer(cfilename))
./bindings/go/llvm/bitreader.go: C.free(unsafe.Pointer(errmsg))
./bindings/go/llvm/bitreader.go: C.free(unsafe.Pointer(errmsg))
./bindings/go/llvm/dibuilder.go: "unsafe"
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(file))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(dir))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(producer))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(flags))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(cfilename))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(cdir))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(name))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(linkageName))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(name))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(name))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(name))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(name))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(name))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(name))
./bindings/go/llvm/dibuilder.go: defer C.free(unsafe.Pointer(name))
./bindings/go/llvm/dibuilder.go: data = (*C.int64_t)(unsafe.Pointer(&addr[0]))
./bindings/go/llvm/executionengine.go:import "unsafe"
./bindings/go/llvm/executionengine.go: return (*C.LLVMGenericValueRef)(unsafe.Pointer(t))
./bindings/go/llvm/executionengine.go:func NewGenericValueFromPointer(p unsafe.Pointer) (g GenericValue) {
./bindings/go/llvm/executionengine.go:func (g GenericValue) Pointer() unsafe.Pointer {
./bindings/go/llvm/executionengine.go: C.LLVMInitializeMCJITCompilerOptions(&options, C.size_t(unsafe.Sizeof(C.struct_LLVMMCJITCompilerOptions{})))
./bindings/go/llvm/executionengine.go: fail := C.LLVMCreateMCJITCompilerForModule(&ee.C, m.C, &options.C, C.size_t(unsafe.Sizeof(C.struct_LLVMMCJITCompilerOptions{})), &cmsg)
./bindings/go/llvm/executionengine.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/executionengine.go:func (ee ExecutionEngine) RecompileAndRelinkFunction(f Value) unsafe.Pointer {
./bindings/go/llvm/executionengine.go:func (ee ExecutionEngine) AddGlobalMapping(global Value, addr unsafe.Pointer) {
./bindings/go/llvm/executionengine.go:func (ee ExecutionEngine) PointerToGlobal(global Value) unsafe.Pointer {
./bindings/go/llvm/ir.go:import "unsafe"
./bindings/go/llvm/ir.go:func llvmTypeRefPtr(t *Type) *C.LLVMTypeRef { return (*C.LLVMTypeRef)(unsafe.Pointer(t)) }
./bindings/go/llvm/ir.go:func llvmValueRefPtr(t *Value) *C.LLVMValueRef { return (*C.LLVMValueRef)(unsafe.Pointer(t)) }
./bindings/go/llvm/ir.go: return (*C.LLVMMetadataRef)(unsafe.Pointer(t))
./bindings/go/llvm/ir.go: return (*C.LLVMBasicBlockRef)(unsafe.Pointer(t))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(clayout))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(ctarget))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cir))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(casm))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cstr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cstr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cstr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cstr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cstr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cstr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cattr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cvalue))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cstr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cstr))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cname))
./bindings/go/llvm/ir.go: defer C.free(unsafe.Pointer(cpath))
./bindings/go/llvm/ir.go: return C.GoBytes(unsafe.Pointer(cstart), C.int(csize))
./bindings/go/llvm/support.go: "unsafe"
./bindings/go/llvm/support.go: defer C.free(unsafe.Pointer(libstr))
./bindings/go/llvm/support.go: C.free(unsafe.Pointer(errstr))
./bindings/go/llvm/support.go: defer C.free(unsafe.Pointer(argstrs[i]))
./bindings/go/llvm/support.go: defer C.free(unsafe.Pointer(overviewstr))
./bindings/go/llvm/target.go:import "unsafe"
./bindings/go/llvm/target.go: defer C.free(unsafe.Pointer(crep))
./bindings/go/llvm/target.go: defer C.free(unsafe.Pointer(ctriple))
./bindings/go/llvm/target.go: C.free(unsafe.Pointer(errstr))
./bindings/go/llvm/target.go: defer C.free(unsafe.Pointer(cTriple))
./bindings/go/llvm/target.go: defer C.free(unsafe.Pointer(cCPU))
./bindings/go/llvm/target.go: defer C.free(unsafe.Pointer(cFeatures))
./bindings/go/llvm/target.go: C.free(unsafe.Pointer(errstr))
./bindings/go/llvm/target.go: defer C.free(unsafe.Pointer(cTriple))
./bindings/go/llvm/transforms_instrumentation.go:import "unsafe"
./bindings/go/llvm/transforms_instrumentation.go: defer C.free(unsafe.Pointer(abiliststrs[i]))
./cmake/modules/CheckAtomic.cmake: message(STATUS "Warning: LLVM will be built thread-unsafe because atomic builtins are missing")
./cmake/modules/HandleLLVMOptions.cmake: -wd4805 # Suppress 'unsafe mix of type <type> and type <type> in operation'
./configure: { echo "$as_me:$LINENO: WARNING: LLVM will be built thread-unsafe because atomic builtins are missing" >&5
./configure:echo "$as_me: WARNING: LLVM will be built thread-unsafe because atomic builtins are missing" >&2;}
./docs/Atomics.rst: examples of unsafe optimizations are narrowing an assignment into a bitfield,
./docs/CommandGuide/llc.rst:.. option:: --enable-unsafe-fp-math
./docs/CommandGuide/llc.rst: Enable optimizations that make unsafe assumptions about IEEE math (e.g. that
./docs/CommandGuide/lli.rst:**-enable-unsafe-fp-math**
./docs/HistoricalNotes/2001-05-19-ExceptionResponse.txt:> also unsafe in terms of checking where control returns (which is I suppose
./docs/LangRef.rst:be set to enable otherwise unsafe floating point operations
./docs/LangRef.rst: Unsafe:
./docs/LangRef.rst:the corresponding bit from the '``undef``' is. As such, it is unsafe to
./docs/LangRef.rst: Unsafe:
./docs/LangRef.rst:which are optimization hints to enable otherwise unsafe floating point
./docs/LangRef.rst:unsafe floating point optimizations:
./docs/LangRef.rst:unsafe floating point optimizations:
./docs/LangRef.rst:unsafe floating point optimizations:
./docs/LangRef.rst:to enable otherwise unsafe floating point optimizations:
./docs/LangRef.rst:otherwise unsafe floating point optimizations.
./docs/SourceLevelDebugging.rst: attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./docs/SourceLevelDebugging.rst:| DW_APPLE_PROPERTY_unsafe_unretained | 0x800 |
./docs/StackMaps.rst:becomes unsafe. The runtime can prevent subsequent execution of that
./docs/tutorial/LangImpl9.rst:IR does not itself guarantee safety. The LLVM IR allows unsafe pointer
./docs/tutorial/OCamlLangImpl8.rst:IR does not itself guarantee safety. The LLVM IR allows unsafe pointer
./include/cereal/external/rapidjson/internal/stack.h://! A type-unsafe stack for storing different types of data.
./include/llvm/ADT/APInt.h: /// temporaries. It is unsafe for general use so it is not public.
./include/llvm/ADT/ilist.h: void clearAndLeakNodesUnsafely() {
./include/llvm/ADT/IntervalMap.h: assert(i < N && "Unsafe intervals");
./include/llvm/ADT/IntervalMap.h: assert(i < N && "Unsafe intervals");
./include/llvm/ADT/IntervalMap.h: /// unsafeStart - Writable access to start() for iterator.
./include/llvm/ADT/IntervalMap.h: KeyT &unsafeStart() const {
./include/llvm/ADT/IntervalMap.h: /// unsafeStop - Writable access to stop() for iterator.
./include/llvm/ADT/IntervalMap.h: KeyT &unsafeStop() const {
./include/llvm/ADT/IntervalMap.h: /// unsafeValue - Writable access to value() for iterator.
./include/llvm/ADT/IntervalMap.h: ValT &unsafeValue() const {
./include/llvm/ADT/IntervalMap.h: const KeyT &start() const { return unsafeStart(); }
./include/llvm/ADT/IntervalMap.h: const KeyT &stop() const { return unsafeStop(); }
./include/llvm/ADT/IntervalMap.h: const ValT &value() const { return unsafeValue(); }
./include/llvm/ADT/IntervalMap.h: void setStartUnchecked(KeyT a) { this->unsafeStart() = a; }
./include/llvm/ADT/IntervalMap.h: this->unsafeStop() = b;
./include/llvm/ADT/IntervalMap.h: void setValueUnchecked(ValT x) { this->unsafeValue() = x; }
./include/llvm/ADT/IntervalMap.h: KeyT &CurStart = this->unsafeStart();
./include/llvm/ADT/StringRef.h: // Visual C++ warning C4805: '!=' : unsafe mix of type 'bool' and type
./include/llvm/cereal/include/cereal/external/rapidjson/internal/stack.h://! A type-unsafe stack for storing different types of data.
./include/llvm/CodeGen/CommandFlags.h:EnableUnsafeFPMath("enable-unsafe-fp-math",
./include/llvm/CodeGen/CommandFlags.h: Options.UnsafeFPMath = EnableUnsafeFPMath;
./include/llvm/CodeGen/Passes.h:/// pass is overriden, it isn't unnecessarily instantiated. It is also unsafe to
./include/llvm/CodeGen/RegAllocPBQP.h: UnsafeRows(new bool[M.getRows() - 1]()),
./include/llvm/CodeGen/RegAllocPBQP.h: UnsafeCols(new bool[M.getCols() - 1]()) {
./include/llvm/CodeGen/RegAllocPBQP.h: UnsafeRows[i - 1] = true;
./include/llvm/CodeGen/RegAllocPBQP.h: UnsafeCols[j - 1] = true;
./include/llvm/CodeGen/RegAllocPBQP.h: const bool* getUnsafeRows() const { return UnsafeRows.get(); }
./include/llvm/CodeGen/RegAllocPBQP.h: const bool* getUnsafeCols() const { return UnsafeCols.get(); }
./include/llvm/CodeGen/RegAllocPBQP.h: std::unique_ptr<bool[]> UnsafeRows;
./include/llvm/CodeGen/RegAllocPBQP.h: std::unique_ptr<bool[]> UnsafeCols;
./include/llvm/CodeGen/RegAllocPBQP.h: : RS(Unprocessed), NumOpts(0), DeniedOpts(0), OptUnsafeEdges(nullptr),
./include/llvm/CodeGen/RegAllocPBQP.h: OptUnsafeEdges(new unsigned[NumOpts]), VReg(Other.VReg),
./include/llvm/CodeGen/RegAllocPBQP.h: std::copy(&Other.OptUnsafeEdges[0], &Other.OptUnsafeEdges[NumOpts],
./include/llvm/CodeGen/RegAllocPBQP.h: &OptUnsafeEdges[0]);
./include/llvm/CodeGen/RegAllocPBQP.h: OptUnsafeEdges(std::move(Other.OptUnsafeEdges)), VReg(Other.VReg),
./include/llvm/CodeGen/RegAllocPBQP.h: OptUnsafeEdges.reset(new unsigned[NumOpts]);
./include/llvm/CodeGen/RegAllocPBQP.h: std::copy(Other.OptUnsafeEdges.get(), Other.OptUnsafeEdges.get() + NumOpts,
./include/llvm/CodeGen/RegAllocPBQP.h: OptUnsafeEdges.get());
./include/llvm/CodeGen/RegAllocPBQP.h: OptUnsafeEdges = std::move(Other.OptUnsafeEdges);
./include/llvm/CodeGen/RegAllocPBQP.h: OptUnsafeEdges = std::unique_ptr<unsigned[]>(new unsigned[NumOpts]());
./include/llvm/CodeGen/RegAllocPBQP.h: const bool* UnsafeOpts =
./include/llvm/CodeGen/RegAllocPBQP.h: Transpose ? MD.getUnsafeCols() : MD.getUnsafeRows();
./include/llvm/CodeGen/RegAllocPBQP.h: OptUnsafeEdges[i] += UnsafeOpts[i];
./include/llvm/CodeGen/RegAllocPBQP.h: const bool* UnsafeOpts =
./include/llvm/CodeGen/RegAllocPBQP.h: Transpose ? MD.getUnsafeCols() : MD.getUnsafeRows();
./include/llvm/CodeGen/RegAllocPBQP.h: OptUnsafeEdges[i] -= UnsafeOpts[i];
./include/llvm/CodeGen/RegAllocPBQP.h: (std::find(&OptUnsafeEdges[0], &OptUnsafeEdges[NumOpts], 0) !=
./include/llvm/CodeGen/RegAllocPBQP.h: &OptUnsafeEdges[NumOpts]);
./include/llvm/CodeGen/RegAllocPBQP.h: std::unique_ptr<unsigned[]> OptUnsafeEdges;
./include/llvm/CodeGen/ScoreboardHazardRecognizer.h: // another module. Follows the current thread-unsafe model of tracing.
./include/llvm/CodeGen/SelectionDAGNodes.h: bool UnsafeAlgebra : 1;
./include/llvm/CodeGen/SelectionDAGNodes.h: UnsafeAlgebra = false;
./include/llvm/CodeGen/SelectionDAGNodes.h: void setUnsafeAlgebra(bool b) { UnsafeAlgebra = b; }
./include/llvm/CodeGen/SelectionDAGNodes.h: bool hasUnsafeAlgebra() const { return UnsafeAlgebra; }
./include/llvm/CodeGen/SelectionDAGNodes.h: (UnsafeAlgebra << 3) | (NoNaNs << 4) | (NoInfs << 5) |
./include/llvm/IR/Instruction.h: /// Set or clear the unsafe-algebra flag on this instruction, which must be an
./include/llvm/IR/Instruction.h: void setHasUnsafeAlgebra(bool B);
./include/llvm/IR/Instruction.h: /// Determine whether the unsafe-algebra flag is set.
./include/llvm/IR/Instruction.h: bool hasUnsafeAlgebra() const;
./include/llvm/IR/Operator.h: UnsafeAlgebra = (1 << 0),
./include/llvm/IR/Operator.h: bool unsafeAlgebra() const { return 0 != (Flags & UnsafeAlgebra); }
./include/llvm/IR/Operator.h: void setUnsafeAlgebra() {
./include/llvm/IR/Operator.h: Flags |= UnsafeAlgebra;
./include/llvm/IR/Operator.h: void setHasUnsafeAlgebra(bool B) {
./include/llvm/IR/Operator.h: (SubclassOptionalData & ~FastMathFlags::UnsafeAlgebra) |
./include/llvm/IR/Operator.h: (B * FastMathFlags::UnsafeAlgebra);
./include/llvm/IR/Operator.h: // Unsafe algebra implies all the others
./include/llvm/IR/Operator.h: bool hasUnsafeAlgebra() const {
./include/llvm/IR/Operator.h: return (SubclassOptionalData & FastMathFlags::UnsafeAlgebra) != 0;
./include/llvm/Support/CrashRecoveryContext.h:/// CrashRecoveryContext::Enable(), and then executing unsafe operations via a
./include/llvm/Support/CrashRecoveryContext.h:/// if (!CRC.RunSafely(actual_work, 0)) {
./include/llvm/Support/CrashRecoveryContext.h: /// RunSafely has returned false. Clients can use getBacktrace() to retrieve
./include/llvm/Support/CrashRecoveryContext.h: bool RunSafely(function_ref<void()> Fn);
./include/llvm/Support/CrashRecoveryContext.h: bool RunSafely(void (*Fn)(void*), void *UserData) {
./include/llvm/Support/CrashRecoveryContext.h: return RunSafely([&]() { Fn(UserData); });
./include/llvm/Support/CrashRecoveryContext.h: /// See RunSafely() and llvm_execute_on_thread().
./include/llvm/Support/CrashRecoveryContext.h: bool RunSafelyOnThread(function_ref<void()>, unsigned RequestedStackSize = 0);
./include/llvm/Support/CrashRecoveryContext.h: bool RunSafelyOnThread(void (*Fn)(void*), void *UserData,
./include/llvm/Support/CrashRecoveryContext.h: return RunSafelyOnThread([&]() { Fn(UserData); }, RequestedStackSize);
./include/llvm/Support/CrashRecoveryContext.h: /// return failure from RunSafely(). This function does not return.
./include/llvm/Support/CrashRecoveryContext.h: /// RunSafely() has returned false.
./include/llvm/Support/Dwarf.h: DW_APPLE_PROPERTY_unsafe_unretained = 0x800
./include/llvm/Support/LockFileManager.h: std::error_code unsafeRemoveLockFile();
./include/llvm/Support/Recycler.h: FreeList.clearAndLeakNodesUnsafely();
./include/llvm/Target/Target.td: bit isNotDuplicable = 0; // Is it unsafe to duplicate this instruction?
./include/llvm/Target/TargetOptions.h: LessPreciseFPMADOption(false), UnsafeFPMath(false),
./include/llvm/Target/TargetOptions.h: /// UnsafeFPMath - This flag is enabled when the
./include/llvm/Target/TargetOptions.h: /// -enable-unsafe-fp-math flag is specified on the command line. When
./include/llvm/Target/TargetOptions.h: /// UnsafeFPMath implies LessPreciseFPMAD.
./include/llvm/Target/TargetOptions.h: unsigned UnsafeFPMath : 1;
./include/llvm/Target/TargetOptions.h: ARE_EQUAL(UnsafeFPMath) &&
./include/llvm/Transforms/Instrumentation.h:/// \brief This pass splits the stack into a safe stack and an unsafe stack to
./include/llvm/Transforms/Utils/SimplifyLibCalls.h: bool UnsafeFPShrink;
./lib/Analysis/InstructionSimplify.cpp: // this simplification is unsafe if CI is zero.
./lib/Analysis/LoopAccessAnalysis.cpp: // Unsafe if the minimum distance needed is greater than max safe distance.
./lib/Analysis/LoopAccessAnalysis.cpp: // This case is currently unsafe according to the max safe distance. If we
./lib/Analysis/LoopAccessAnalysis.cpp: // unsafe dependence. This puts a limit on this quadratic
./lib/Analysis/LoopAccessAnalysis.cpp: DEBUG(dbgs() << "LAA: No unsafe dependent memory operations in loop. We"
./lib/Analysis/LoopAccessAnalysis.cpp: "unsafe dependent memory operations in loop");
./lib/Analysis/LoopAccessAnalysis.cpp: DEBUG(dbgs() << "LAA: unsafe dependent memory operations in loop\n");
./lib/Analysis/MemoryDependenceAnalysis.cpp: // It is unsafe to replace %val by 0 because another thread may be running:
./lib/Analysis/ScalarEvolutionExpander.cpp:// that may expand to a !isSafeToSpeculativelyExecute value is unsafe, namely
./lib/Analysis/ScalarEvolutionExpander.cpp:struct SCEVFindUnsafe {
./lib/Analysis/ScalarEvolutionExpander.cpp: bool IsUnsafe;
./lib/Analysis/ScalarEvolutionExpander.cpp: SCEVFindUnsafe(ScalarEvolution &se): SE(se), IsUnsafe(false) {}
./lib/Analysis/ScalarEvolutionExpander.cpp: IsUnsafe = true;
./lib/Analysis/ScalarEvolutionExpander.cpp: IsUnsafe = true;
./lib/Analysis/ScalarEvolutionExpander.cpp: bool isDone() const { return IsUnsafe; }
./lib/Analysis/ScalarEvolutionExpander.cpp: SCEVFindUnsafe Search(SE);
./lib/Analysis/ScalarEvolutionExpander.cpp: return !Search.IsUnsafe;
./lib/AsmParser/LLParser.h: case lltok::kw_fast: FMF.setUnsafeAlgebra(); Lex.Lex(); continue;
./lib/Bitcode/Reader/BitcodeReader.cpp: if (0 != (Val & FastMathFlags::UnsafeAlgebra))
./lib/Bitcode/Reader/BitcodeReader.cpp: FMF.setUnsafeAlgebra();
./lib/Bitcode/Writer/BitcodeWriter.cpp: if (FPMO->hasUnsafeAlgebra())
./lib/Bitcode/Writer/BitcodeWriter.cpp: Flags |= FastMathFlags::UnsafeAlgebra;
./lib/CodeGen/MachineFunction.cpp: I->Insts.clearAndLeakNodesUnsafely();
./lib/CodeGen/ScheduleDAGInstrs.cpp:// This MI might have either incomplete info, or known to be unsafe
./lib/CodeGen/ScheduleDAGInstrs.cpp:static inline bool isUnsafeMemoryObject(MachineInstr *MI,
./lib/CodeGen/ScheduleDAGInstrs.cpp: if (isUnsafeMemoryObject(MIa, MFI, DL) || isUnsafeMemoryObject(MIb, MFI, DL))
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (!Options->UnsafeFPMath) return 0;
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (!Options->UnsafeFPMath) return 0;
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: assert(Options.UnsafeFPMath);
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: assert(Options.UnsafeFPMath);
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: // FIXME: Instead of testing for UnsafeFPMath, this should be checking for
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath &&
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: bool UnsafeFPMath = (Options.AllowFPOpFusion == FPOpFusion::Fast ||
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: Options.UnsafeFPMath);
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: UnsafeFPMath);
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (UnsafeFPMath && LookThroughFPExt) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if ((UnsafeFPMath || HasFMAD) && Aggressive) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (UnsafeFPMath && LookThroughFPExt) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: bool UnsafeFPMath = (Options.AllowFPOpFusion == FPOpFusion::Fast ||
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: Options.UnsafeFPMath);
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: UnsafeFPMath);
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (UnsafeFPMath && LookThroughFPExt) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: // orthogonal flags -fp-contract=fast and -enable-unsafe-fp-math prevent
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: // orthogonal flags -fp-contract=fast and -enable-unsafe-fp-math prevent
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if ((UnsafeFPMath || HasFMAD) && Aggressive) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (UnsafeFPMath && LookThroughFPExt) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: // If 'unsafe math' is enabled, fold lots of things.
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: } // enable-unsafe-fp-math
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: // If 'unsafe math' is enabled, fold lots of things.
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath && N1CFP &&
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath &&
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath && N1CFP && N0 == N2)
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath && N1CFP &&
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (Options.UnsafeFPMath) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (!DAG.getTarget().Options.UnsafeFPMath || TLI.isFsqrtCheap())
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: if (DAG.getTarget().Options.UnsafeFPMath || N0IsTrunc) {
./lib/CodeGen/SelectionDAG/DAGCombiner.cpp: // If the bit convert changed the number of elements, it is unsafe
./lib/CodeGen/SelectionDAG/LegalizeDAG.cpp: // combining sin and cos is only safe if unsafe-fpmath is enabled.
./lib/CodeGen/SelectionDAG/LegalizeDAG.cpp: if (isGNU && !TM.Options.UnsafeFPMath)
./lib/CodeGen/SelectionDAG/LegalizeDAG.cpp: if (!TLI.useSoftFloat() && TM.Options.UnsafeFPMath) {
./lib/CodeGen/SelectionDAG/SelectionDAG.cpp: // -(X-Y) -> (Y-X) is unsafe because when X==Y, -0.0 != +0.0
./lib/CodeGen/SelectionDAG/SelectionDAG.cpp: if (getTarget().Options.UnsafeFPMath && OpOpcode == ISD::FSUB)
./lib/CodeGen/SelectionDAG/SelectionDAG.cpp: if (getTarget().Options.UnsafeFPMath) {
./lib/CodeGen/SelectionDAG/SelectionDAG.cpp: if (getTarget().Options.UnsafeFPMath)
./lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp: Flags.setUnsafeAlgebra(FMF.unsafeAlgebra());
./lib/CodeGen/TargetInstrInfo.cpp: // Avoid instructions obviously unsafe for remat.
./lib/CodeGen/TargetOptionsImpl.cpp: return UnsafeFPMath || LessPreciseFPMADOption;
./lib/CodeGen/TargetOptionsImpl.cpp: return !UnsafeFPMath && HonorSignDependentRoundingFPMathOption;
./lib/IR/AsmWriter.cpp: // Unsafe algebra implies all the others, no need to write them all out
./lib/IR/AsmWriter.cpp: if (FPO->hasUnsafeAlgebra())
./lib/IR/ConstantFold.cpp: auto isGlobalUnsafeForEquality = [](const GlobalValue *GV) {
./lib/IR/ConstantFold.cpp: if (!isGlobalUnsafeForEquality(GV1) && !isGlobalUnsafeForEquality(GV2))
./lib/IR/Instruction.cpp:/// Set or clear the unsafe-algebra flag on this instruction, which must be an
./lib/IR/Instruction.cpp:void Instruction::setHasUnsafeAlgebra(bool B) {
./lib/IR/Instruction.cpp: cast<FPMathOperator>(this)->setHasUnsafeAlgebra(B);
./lib/IR/Instruction.cpp:/// Determine whether the unsafe-algebra flag is set.
./lib/IR/Instruction.cpp:bool Instruction::hasUnsafeAlgebra() const {
./lib/IR/Instruction.cpp: return cast<FPMathOperator>(this)->hasUnsafeAlgebra();
./lib/IR/Instruction.cpp: return cast<FPMathOperator>(this)->hasUnsafeAlgebra();
./lib/Support/CrashRecoveryContext.cpp: // Jump back to the RunSafely we were called under.
./lib/Support/CrashRecoveryContext.cpp:bool CrashRecoveryContext::RunSafely(function_ref<void()> Fn) {
./lib/Support/CrashRecoveryContext.cpp:struct RunSafelyOnThreadInfo {
./lib/Support/CrashRecoveryContext.cpp:static void RunSafelyOnThread_Dispatch(void *UserData) {
./lib/Support/CrashRecoveryContext.cpp: RunSafelyOnThreadInfo *Info =
./lib/Support/CrashRecoveryContext.cpp: reinterpret_cast<RunSafelyOnThreadInfo*>(UserData);
./lib/Support/CrashRecoveryContext.cpp: Info->Result = Info->CRC->RunSafely(Info->Fn);
./lib/Support/CrashRecoveryContext.cpp:bool CrashRecoveryContext::RunSafelyOnThread(function_ref<void()> Fn,
./lib/Support/CrashRecoveryContext.cpp: RunSafelyOnThreadInfo Info = { Fn, this, UseBackgroundPriority, false };
./lib/Support/CrashRecoveryContext.cpp: llvm_execute_on_thread(RunSafelyOnThread_Dispatch, &Info, RequestedStackSize);
./lib/Support/Dwarf.cpp: case DW_APPLE_PROPERTY_unsafe_unretained:
./lib/Support/Dwarf.cpp: return "DW_APPLE_PROPERTY_unsafe_unretained";
./lib/Support/LockFileManager.cpp:std::error_code LockFileManager::unsafeRemoveLockFile() {
./lib/Support/regex2.h:/* note that CHadd and CHsub are unsafe, and CHIN doesn't yield 0/1 */
./lib/Target/AArch64/AArch64ISelDAGToDAG.cpp: if (!TM.Options.UnsafeFPMath) {
./lib/Target/AArch64/AArch64ISelLowering.cpp: (Options.AllowFPOpFusion == FPOpFusion::Fast || Options.UnsafeFPMath))
./lib/Target/AArch64/AArch64ISelLowering.cpp: // used for unsafe math or if one of the operands is known to be nonzero.
./lib/Target/AArch64/AArch64ISelLowering.cpp: if (IsOrEqual && !DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/AMDGPU/AMDGPU.td:def FeatureEnableUnsafeDSOffsetFolding : SubtargetFeature <"unsafe-ds-offset-folding",
./lib/Target/AMDGPU/AMDGPU.td: "EnableUnsafeDSOffsetFolding",
./lib/Target/AMDGPU/AMDGPUInstructions.td:def UnsafeFPMath : Predicate<"TM.Options.UnsafeFPMath">;
./lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp: Subtarget->unsafeDSOffsetFoldingEnabled())
./lib/Target/AMDGPU/AMDGPUSubtarget.cpp: EnableUnsafeDSOffsetFolding(false),
./lib/Target/AMDGPU/AMDGPUSubtarget.h: bool EnableUnsafeDSOffsetFolding;
./lib/Target/AMDGPU/AMDGPUSubtarget.h: bool unsafeDSOffsetFoldingEnabled() const {
./lib/Target/AMDGPU/AMDGPUSubtarget.h: return EnableUnsafeDSOffsetFolding;
./lib/Target/AMDGPU/R600Instructions.td:// FIXME: Should be predicated on unsafe fp math.
./lib/Target/AMDGPU/SIInstructions.td:let Predicates = [UnsafeFPMath] in {
./lib/Target/AMDGPU/SIISelLowering.cpp: bool Unsafe = DAG.getTarget().Options.UnsafeFPMath;
./lib/Target/AMDGPU/SIISelLowering.cpp: if ((Unsafe || (VT == MVT::f32 && !Subtarget->hasFP32Denormals())) &&
./lib/Target/AMDGPU/SIISelLowering.cpp: // XXX - Is UnsafeFPMath sufficient to do this for f64? The maximum ULP
./lib/Target/AMDGPU/SIISelLowering.cpp: if (Unsafe) {
./lib/Target/AMDGPU/SIISelLowering.cpp: if (DAG.getTarget().Options.UnsafeFPMath)
./lib/Target/ARM/ARMAsmPrinter.cpp: if (!TM.Options.UnsafeFPMath) {
./lib/Target/ARM/ARMISelLowering.cpp: if (!getTargetMachine().Options.UnsafeFPMath &&
./lib/Target/ARM/ARMISelLowering.cpp:/// OptimizeVFPBrcond - With -enable-unsafe-fp-math, it's legal to optimize some
./lib/Target/ARM/ARMISelLowering.cpp: // If unsafe fp math optimization is enabled and there are no other uses of
./lib/Target/ARM/ARMISelLowering.cpp: if (getTargetMachine().Options.UnsafeFPMath &&
./lib/Target/ARM/ARMISelLowering.cpp: // will return -0, so vmin can only be used for unsafe math or if one of
./lib/Target/ARM/ARMISelLowering.cpp: !DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/ARM/ARMISelLowering.cpp: // will return +0, so vmax can only be used for unsafe math or if one of
./lib/Target/ARM/ARMISelLowering.cpp: !DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/ARM/ARMSubtarget.cpp: UnsafeFPMath = false;
./lib/Target/ARM/ARMSubtarget.cpp: (Options.UnsafeFPMath || isTargetDarwin()))
./lib/Target/ARM/ARMSubtarget.h: /// Target machine allowed unsafe FP math (such as use of NEON fp)
./lib/Target/ARM/ARMSubtarget.h: bool UnsafeFPMath;
./lib/Target/Hexagon/HexagonCopyToCombine.cpp:/// isUnsafeToMoveAcross - Returns true if it is unsafe to move a copy
./lib/Target/Hexagon/HexagonCopyToCombine.cpp:static bool isUnsafeToMoveAcross(MachineInstr *I, unsigned UseReg,
./lib/Target/Hexagon/HexagonCopyToCombine.cpp: if (isUnsafeToMoveAcross(&*I, I2UseReg, I2DestReg, TRI)) {
./lib/Target/Hexagon/HexagonCopyToCombine.cpp: if (isUnsafeToMoveAcross(I, I1UseReg, I1DestReg, TRI) ||
./lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp: if (TM.Options.UnsafeFPMath)
./lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp: return !TM.Options.UnsafeFPMath;
./lib/Target/NVPTX/NVPTXISelLowering.cpp: } else if (TO.AllowFPOpFusion == FPOpFusion::Fast || TO.UnsafeFPMath) {
./lib/Target/NVPTX/NVPTXISelLowering.cpp: } else if (F->hasFnAttribute("unsafe-fp-math")) {
./lib/Target/NVPTX/NVPTXISelLowering.cpp: // Check for unsafe-fp-math=true coming from Clang
./lib/Target/NVPTX/NVPTXISelLowering.cpp: Attribute Attr = F->getFnAttribute("unsafe-fp-math");
./lib/Target/PowerPC/PPCISelLowering.cpp: !(TM.Options.UnsafeFPMath && Subtarget.hasFRSQRTE() &&
./lib/Target/PowerPC/PPCISelLowering.cpp: !(TM.Options.UnsafeFPMath && Subtarget.hasFRSQRTES() &&
./lib/Target/PowerPC/PPCISelLowering.cpp: if (TM.Options.UnsafeFPMath || Subtarget.hasVSX()) {
./lib/Target/PowerPC/PPCISelLowering.cpp: if (TM.Options.UnsafeFPMath) {
./lib/Target/PowerPC/PPCISelLowering.cpp: if (TM.Options.UnsafeFPMath) {
./lib/Target/PowerPC/PPCISelLowering.cpp: // However, if -enable-unsafe-fp-math is in effect, accept double
./lib/Target/PowerPC/PPCISelLowering.cpp: !DAG.getTarget().Options.UnsafeFPMath) {
./lib/Target/PowerPC/PPCISelLowering.cpp: // Note: This functionality is used only when unsafe-fp-math is enabled, and
./lib/Target/PowerPC/PPCISelLowering.cpp: // on cores with reciprocal estimates (which are used when unsafe-fp-math is
./lib/Target/PowerPC/PPCVSXSwapRemoval.cpp: // Non-permuting loads are currently unsafe. We can use special
./lib/Target/PowerPC/PPCVSXSwapRemoval.cpp: // Non-permuting stores are currently unsafe. We can use special
./lib/Target/TargetMachine.cpp: RESET_OPTION(UnsafeFPMath, "unsafe-fp-math");
./lib/Target/X86/README-SSE.txt:When compiled with unsafemath enabled, "main" should enable SSE DAZ mode and
./lib/Target/X86/README-SSE.txt:Floating point max / min are commutable when -enable-unsafe-fp-path is
./lib/Target/X86/README-SSE.txt:[UNSAFE FP]
./lib/Target/X86/X86FastISel.cpp: // Therefore, this is impossible (or at least unsafe) to share values
./lib/Target/X86/X86InstrInfo.cpp: if (!Root.getParent()->getParent()->getTarget().Options.UnsafeFPMath)
./lib/Target/X86/X86ISelDAGToDAG.cpp: // we do not try to use an unsafe Disp with a frame index.
./lib/Target/X86/X86ISelLowering.cpp: if (!TM.Options.UnsafeFPMath) {
./lib/Target/X86/X86ISelLowering.cpp: if (!TM.Options.UnsafeFPMath) {
./lib/Target/X86/X86ISelLowering.cpp: if (!TM.Options.UnsafeFPMath) {
./lib/Target/X86/X86ISelLowering.cpp: // ignored in unsafe-math mode).
./lib/Target/X86/X86ISelLowering.cpp: if (!DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/X86/X86ISelLowering.cpp: if (!DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/X86/X86ISelLowering.cpp: if (!DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/X86/X86ISelLowering.cpp: if (!DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/X86/X86ISelLowering.cpp: if (!DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/X86/X86ISelLowering.cpp: if (!DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/X86/X86ISelLowering.cpp: if (!DAG.getTarget().Options.UnsafeFPMath &&
./lib/Target/X86/X86ISelLowering.cpp: // Since SETCC_CARRY gives output based on R = CF ? ~0 : 0, it's unsafe to
./lib/Target/X86/X86ISelLowering.cpp: // Only perform optimizations if UnsafeMath is used.
./lib/Target/X86/X86ISelLowering.cpp: if (!DAG.getTarget().Options.UnsafeFPMath)
./lib/Target/X86/X86ISelLowering.cpp: // If we run in unsafe-math mode, then convert the FMAX and FMIN nodes
./lib/Transforms/InstCombine/InstCombineAddSub.cpp: /// FAddCombine is the class for optimizing an unsafe fadd/fsub along
./lib/Transforms/InstCombine/InstCombineAddSub.cpp: Flags.setUnsafeAlgebra();
./lib/Transforms/InstCombine/InstCombineAddSub.cpp: assert(I->hasUnsafeAlgebra() && "Should be in unsafe mode");
./lib/Transforms/InstCombine/InstCombineAddSub.cpp: if (I.hasUnsafeAlgebra()) {
./lib/Transforms/InstCombine/InstCombineAddSub.cpp: if (I.hasUnsafeAlgebra()) {
./lib/Transforms/InstCombine/InstCombineMulDivRem.cpp: if (II->getIntrinsicID() != Intrinsic::log2 || !II->hasUnsafeAlgebra())
./lib/Transforms/InstCombine/InstCombineMulDivRem.cpp: if (I->getOpcode() != Instruction::FMul || !I->hasUnsafeAlgebra())
./lib/Transforms/InstCombine/InstCombineMulDivRem.cpp: R->setHasUnsafeAlgebra(true);
./lib/Transforms/InstCombine/InstCombineMulDivRem.cpp: bool AllowReassociate = I.hasUnsafeAlgebra();
./lib/Transforms/InstCombine/InstCombineMulDivRem.cpp: // Under unsafe algebra do:
./lib/Transforms/InstCombine/InstCombineMulDivRem.cpp: bool AllowReassociate = I.hasUnsafeAlgebra();
./lib/Transforms/Instrumentation/SafeStack.cpp:// and the unsafe stack (explicitly allocated and managed through the runtime
./lib/Transforms/Instrumentation/SafeStack.cpp:STATISTIC(NumUnsafeStackFunctions, "Number of functions with unsafe stack");
./lib/Transforms/Instrumentation/SafeStack.cpp:STATISTIC(NumUnsafeStackRestorePointsFunctions,
./lib/Transforms/Instrumentation/SafeStack.cpp:STATISTIC(NumUnsafeStaticAllocas, "Number of unsafe static allocas");
./lib/Transforms/Instrumentation/SafeStack.cpp:STATISTIC(NumUnsafeDynamicAllocas, "Number of unsafe dynamic allocas");
./lib/Transforms/Instrumentation/SafeStack.cpp:STATISTIC(NumUnsafeStackRestorePoints, "Number of setjmps and landingpads");
./lib/Transforms/Instrumentation/SafeStack.cpp: // Stored the pointer - conservatively assume it may be unsafe.
./lib/Transforms/Instrumentation/SafeStack.cpp: // might still be unsafe at runtime.
./lib/Transforms/Instrumentation/SafeStack.cpp: // The parameter is not marked 'nocapture' - unsafe.
./lib/Transforms/Instrumentation/SafeStack.cpp: // The object is unsafe if it is used in any other way.
./lib/Transforms/Instrumentation/SafeStack.cpp:/// (as determined statically), and the unsafe stack, which contains all
./lib/Transforms/Instrumentation/SafeStack.cpp:/// local variables that are accessed in unsafe ways.
./lib/Transforms/Instrumentation/SafeStack.cpp: Constant *UnsafeStackPtr = nullptr;
./lib/Transforms/Instrumentation/SafeStack.cpp: /// Unsafe stack alignment. Each stack frame must ensure that the stack is
./lib/Transforms/Instrumentation/SafeStack.cpp: /// aligned to this value. We need to re-align the unsafe stack if the
./lib/Transforms/Instrumentation/SafeStack.cpp: /// \brief Build a constant representing a pointer to the unsafe stack
./lib/Transforms/Instrumentation/SafeStack.cpp: Constant *getOrCreateUnsafeStackPtr(Module &M);
./lib/Transforms/Instrumentation/SafeStack.cpp: /// replace allocas with pointers into the unsafe stack and generate code to
./lib/Transforms/Instrumentation/SafeStack.cpp: /// \returns A pointer to the top of the unsafe stack after all unsafe static
./lib/Transforms/Instrumentation/SafeStack.cpp: Value *moveStaticAllocasToUnsafeStack(Function &F,
./lib/Transforms/Instrumentation/SafeStack.cpp: /// unsafe stack if needed.
./lib/Transforms/Instrumentation/SafeStack.cpp: /// space dynamically on the unsafe stack and store the dynamic unsafe stack
./lib/Transforms/Instrumentation/SafeStack.cpp: void moveDynamicAllocasToUnsafeStack(Function &F, Value *UnsafeStackPtr,
./lib/Transforms/Instrumentation/SafeStack.cpp:Constant *SafeStack::getOrCreateUnsafeStackPtr(Module &M) {
./lib/Transforms/Instrumentation/SafeStack.cpp: // The unsafe stack pointer is stored in a global variable with a magic name.
./lib/Transforms/Instrumentation/SafeStack.cpp: const char *kUnsafeStackPtrVar = "__safestack_unsafe_stack_ptr";
./lib/Transforms/Instrumentation/SafeStack.cpp: auto UnsafeStackPtr =
./lib/Transforms/Instrumentation/SafeStack.cpp: dyn_cast_or_null<GlobalVariable>(M.getNamedValue(kUnsafeStackPtrVar));
./lib/Transforms/Instrumentation/SafeStack.cpp: if (!UnsafeStackPtr) {
./lib/Transforms/Instrumentation/SafeStack.cpp: UnsafeStackPtr = new GlobalVariable(
./lib/Transforms/Instrumentation/SafeStack.cpp: /*Initializer=*/0, /*Name=*/kUnsafeStackPtrVar,
./lib/Transforms/Instrumentation/SafeStack.cpp: if (UnsafeStackPtr->getValueType() != StackPtrTy) {
./lib/Transforms/Instrumentation/SafeStack.cpp: report_fatal_error(Twine(kUnsafeStackPtrVar) + " must have void* type");
./lib/Transforms/Instrumentation/SafeStack.cpp: if (!UnsafeStackPtr->isThreadLocal()) {
./lib/Transforms/Instrumentation/SafeStack.cpp: report_fatal_error(Twine(kUnsafeStackPtrVar) + " must be thread-local");
./lib/Transforms/Instrumentation/SafeStack.cpp: return UnsafeStackPtr;
./lib/Transforms/Instrumentation/SafeStack.cpp: ++NumUnsafeStaticAllocas;
./lib/Transforms/Instrumentation/SafeStack.cpp: ++NumUnsafeDynamicAllocas;
./lib/Transforms/Instrumentation/SafeStack.cpp: "unsafe_stack_dynamic_ptr");
./lib/Transforms/Instrumentation/SafeStack.cpp: // We need the original unsafe stack pointer value, even if there are
./lib/Transforms/Instrumentation/SafeStack.cpp: // no unsafe static allocas.
./lib/Transforms/Instrumentation/SafeStack.cpp: StaticTop = IRB.CreateLoad(UnsafeStackPtr, false, "unsafe_stack_ptr");
./lib/Transforms/Instrumentation/SafeStack.cpp: ++NumUnsafeStackRestorePoints;
./lib/Transforms/Instrumentation/SafeStack.cpp: IRB.CreateStore(CurrentTop, UnsafeStackPtr);
./lib/Transforms/Instrumentation/SafeStack.cpp:SafeStack::moveStaticAllocasToUnsafeStack(Function &F,
./lib/Transforms/Instrumentation/SafeStack.cpp: // We explicitly compute and set the unsafe stack layout for all unsafe
./lib/Transforms/Instrumentation/SafeStack.cpp: // static alloca instructions. We save the unsafe "base pointer" in the
./lib/Transforms/Instrumentation/SafeStack.cpp: IRB.CreateLoad(UnsafeStackPtr, false, "unsafe_stack_ptr");
./lib/Transforms/Instrumentation/SafeStack.cpp: IRB.CreateStore(BasePointer, UnsafeStackPtr);
./lib/Transforms/Instrumentation/SafeStack.cpp: // Compute maximum alignment among static objects on the unsafe stack.
./lib/Transforms/Instrumentation/SafeStack.cpp: // Allocate space for every unsafe static AllocaInst on the unsafe stack.
./lib/Transforms/Instrumentation/SafeStack.cpp: "unsafe_stack_static_top");
./lib/Transforms/Instrumentation/SafeStack.cpp: IRB.CreateStore(StaticTop, UnsafeStackPtr);
./lib/Transforms/Instrumentation/SafeStack.cpp:void SafeStack::moveDynamicAllocasToUnsafeStack(
./lib/Transforms/Instrumentation/SafeStack.cpp: Function &F, Value *UnsafeStackPtr, AllocaInst *DynamicTop,
./lib/Transforms/Instrumentation/SafeStack.cpp: Value *SP = IRB.CreatePtrToInt(IRB.CreateLoad(UnsafeStackPtr), IntPtrTy);
./lib/Transforms/Instrumentation/SafeStack.cpp: IRB.CreateStore(NewTop, UnsafeStackPtr);
./lib/Transforms/Instrumentation/SafeStack.cpp: Instruction *LI = IRB.CreateLoad(UnsafeStackPtr);
./lib/Transforms/Instrumentation/SafeStack.cpp: Instruction *SI = IRB.CreateStore(II->getArgOperand(0), UnsafeStackPtr);
./lib/Transforms/Instrumentation/SafeStack.cpp: // not aware of the unsafe stack and won't unwind/restore it prorerly.
./lib/Transforms/Instrumentation/SafeStack.cpp: // instrumentation to restore the unsafe stack pointer when necessary.
./lib/Transforms/Instrumentation/SafeStack.cpp: // unsafe stack, all return instructions and stack restore points.
./lib/Transforms/Instrumentation/SafeStack.cpp: ++NumUnsafeStackFunctions; // This function has the unsafe stack.
./lib/Transforms/Instrumentation/SafeStack.cpp: ++NumUnsafeStackRestorePointsFunctions;
./lib/Transforms/Instrumentation/SafeStack.cpp: if (!UnsafeStackPtr)
./lib/Transforms/Instrumentation/SafeStack.cpp: UnsafeStackPtr = getOrCreateUnsafeStackPtr(*F.getParent());
./lib/Transforms/Instrumentation/SafeStack.cpp: // The top of the unsafe stack after all unsafe static allocas are allocated.
./lib/Transforms/Instrumentation/SafeStack.cpp: Value *StaticTop = moveStaticAllocasToUnsafeStack(F, StaticAllocas, Returns);
./lib/Transforms/Instrumentation/SafeStack.cpp: // Safe stack object that stores the current unsafe stack top. It is updated
./lib/Transforms/Instrumentation/SafeStack.cpp: // as unsafe dynamic (non-constant-sized) allocas are allocated and freed.
./lib/Transforms/Instrumentation/SafeStack.cpp: // FIXME: a better alternative might be to store the unsafe stack pointer
./lib/Transforms/Instrumentation/SafeStack.cpp: moveDynamicAllocasToUnsafeStack(F, UnsafeStackPtr, DynamicTop,
./lib/Transforms/IPO/Inliner.cpp: // It is unsafe to drop a function with discardable linkage from a COMDAT
./lib/Transforms/IPO/Inliner.cpp: // groups so it is unsafe to do so *unless* the linkage is local.
./lib/Transforms/ObjCARC/ObjCARCContract.cpp: // It seems that functions which "return twice" are also unsafe for the
./lib/Transforms/ObjCARC/PtrState.cpp: // mixing them is unsafe.
./lib/Transforms/Scalar/DeadStoreElimination.cpp:/// This function detects when it is unsafe to remove a dependent instruction
./lib/Transforms/Scalar/LoopDistribute.cpp:/// number of unsafe dependences that start out from this instruction minus
./lib/Transforms/Scalar/LoopDistribute.cpp:/// number, we know whether any unsafe dependence crosses over a program point.
./lib/Transforms/Scalar/LoopDistribute.cpp: unsigned NumUnsafeDependencesStartOrEnd;
./lib/Transforms/Scalar/LoopDistribute.cpp: Entry(Instruction *Inst) : Inst(Inst), NumUnsafeDependencesStartOrEnd(0) {}
./lib/Transforms/Scalar/LoopDistribute.cpp: ++Accesses[Dep.Source].NumUnsafeDependencesStartOrEnd;
./lib/Transforms/Scalar/LoopDistribute.cpp: --Accesses[Dep.Destination].NumUnsafeDependencesStartOrEnd;
./lib/Transforms/Scalar/LoopDistribute.cpp: DEBUG(dbgs() << "Skipping; No unsafe dependences to isolate");
./lib/Transforms/Scalar/LoopDistribute.cpp: // with unsafe dependences into "cyclic" partition otherwise put each store
./lib/Transforms/Scalar/LoopDistribute.cpp: // has an unsafe dependence (Store3->Load1) spanning over it must be
./lib/Transforms/Scalar/LoopDistribute.cpp: // NumUnsafeDependencesStartOrEnd NumUnsafeDependencesActive
./lib/Transforms/Scalar/LoopDistribute.cpp: // Load2 | /Unsafe/ 0 1
./lib/Transforms/Scalar/LoopDistribute.cpp: // NumUnsafeDependencesActive > 0 indicates this situation and in this case
./lib/Transforms/Scalar/LoopDistribute.cpp: // NumUnsafeDependencesActive reaches 0.
./lib/Transforms/Scalar/LoopDistribute.cpp: int NumUnsafeDependencesActive = 0;
./lib/Transforms/Scalar/LoopDistribute.cpp: // We update NumUnsafeDependencesActive post-instruction, catch the
./lib/Transforms/Scalar/LoopDistribute.cpp: // start of a dependence directly via NumUnsafeDependencesStartOrEnd.
./lib/Transforms/Scalar/LoopDistribute.cpp: if (NumUnsafeDependencesActive ||
./lib/Transforms/Scalar/LoopDistribute.cpp: InstDep.NumUnsafeDependencesStartOrEnd > 0)
./lib/Transforms/Scalar/LoopDistribute.cpp: NumUnsafeDependencesActive += InstDep.NumUnsafeDependencesStartOrEnd;
./lib/Transforms/Scalar/LoopDistribute.cpp: assert(NumUnsafeDependencesActive >= 0 &&
./lib/Transforms/Scalar/LoopIdiomRecognize.cpp: // would be unsafe to do if there is anything else in the loop that may read
./lib/Transforms/Scalar/LoopIdiomRecognize.cpp: // would be unsafe to do if there is anything else in the loop that may read
./lib/Transforms/Scalar/LoopInterchange.cpp: bool containsUnsafeInstructionsInHeader(BasicBlock *BB);
./lib/Transforms/Scalar/LoopInterchange.cpp: bool containsUnsafeInstructionsInLatch(BasicBlock *BB);
./lib/Transforms/Scalar/LoopInterchange.cpp:bool LoopInterchangeLegality::containsUnsafeInstructionsInHeader(
./lib/Transforms/Scalar/LoopInterchange.cpp:bool LoopInterchangeLegality::containsUnsafeInstructionsInLatch(
./lib/Transforms/Scalar/LoopInterchange.cpp: // and outer loop latch doesnt contain any unsafe instructions.
./lib/Transforms/Scalar/LoopInterchange.cpp: if (containsUnsafeInstructionsInHeader(OuterLoopHeader) ||
./lib/Transforms/Scalar/LoopInterchange.cpp: containsUnsafeInstructionsInLatch(OuterLoopLatch))
./lib/Transforms/Scalar/Reassociate.cpp: cast<Instruction>(V)->hasUnsafeAlgebra()))
./lib/Transforms/Scalar/Reassociate.cpp: cast<Instruction>(V)->hasUnsafeAlgebra()))
./lib/Transforms/Scalar/Reassociate.cpp: !cast<Instruction>(Op)->hasUnsafeAlgebra())) &&
./lib/Transforms/Scalar/Reassociate.cpp: // Don't optimize floating point instructions that don't have unsafe algebra.
./lib/Transforms/Scalar/Reassociate.cpp: if (I->getType()->isFloatingPointTy() && !I->hasUnsafeAlgebra())
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: /// isUnsafe - This is set to true if the alloca cannot be SROA'd.
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: bool isUnsafe : 1;
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: : AI(ai), isUnsafe(false), isMemCpySrc(false), isMemCpyDst(false),
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: void MarkUnsafe(AllocaInfo &I, Instruction *User) {
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: I.isUnsafe = true;
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: if (!Info.isUnsafe)
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, User);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, User);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, User);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, User);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, User);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: if (Info.isUnsafe) return;
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, UI);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, UI);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, UI);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, UI);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: if (Info.isUnsafe) return;
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, GEPI);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: MarkUnsafe(Info, GEPI);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: return MarkUnsafe(Info, TheAccess);
./lib/Transforms/Scalar/ScalarReplAggregates.cpp: if (Info.isUnsafe) {
./lib/Transforms/Scalar/SROA.cpp: Instruction *hasUnsafePHIOrSelectUse(Instruction *Root, uint64_t &Size) {
./lib/Transforms/Scalar/SROA.cpp: // This is a new PHI/Select, check for an unsafe use of it.
./lib/Transforms/Scalar/SROA.cpp: if (Instruction *UnsafeI = hasUnsafePHIOrSelectUse(&I, Size))
./lib/Transforms/Scalar/SROA.cpp: return PI.setAborted(UnsafeI);
./lib/Transforms/Scalar/StraightLineStrengthReduce.cpp: // SLSR is currently unsafe if i * S may overflow.
./lib/Transforms/Utils/LoopUtils.cpp: bool FastMath = FP && I->hasUnsafeAlgebra();
./lib/Transforms/Utils/SimplifyCFG.cpp: // Don't hoist the instruction if it's unsafe or expensive.
./lib/Transforms/Utils/SimplifyCFG.cpp: // case, it would be unsafe to hoist the operation into a select instruction.
./lib/Transforms/Utils/SimplifyLibCalls.cpp: EnableUnsafeFPShrink("enable-double-float-shrink", cl::Hidden,
./lib/Transforms/Utils/SimplifyLibCalls.cpp: cl::desc("Enable unsafe double to float "
./lib/Transforms/Utils/SimplifyLibCalls.cpp: if (UnsafeFPShrink && Callee->getName() == "cos" && TLI->has(LibFunc::cosf)) {
./lib/Transforms/Utils/SimplifyLibCalls.cpp: if (UnsafeFPShrink && Callee->getName() == "pow" && TLI->has(LibFunc::powf)) {
./lib/Transforms/Utils/SimplifyLibCalls.cpp: if (UnsafeFPShrink && Callee->getName() == "exp2" &&
./lib/Transforms/Utils/SimplifyLibCalls.cpp: // we have to rely on the function-level unsafe-fp-math attribute to do this
./lib/Transforms/Utils/SimplifyLibCalls.cpp: if (F->hasFnAttribute("unsafe-fp-math")) {
./lib/Transforms/Utils/SimplifyLibCalls.cpp: // Check for unsafe-fp-math = true.
./lib/Transforms/Utils/SimplifyLibCalls.cpp: Attribute Attr = F->getFnAttribute("unsafe-fp-math");
./lib/Transforms/Utils/SimplifyLibCalls.cpp: if (I->getOpcode() == Instruction::FMul && I->hasUnsafeAlgebra()) {
./lib/Transforms/Utils/SimplifyLibCalls.cpp: if (EnableUnsafeFPShrink.getNumOccurrences() > 0)
./lib/Transforms/Utils/SimplifyLibCalls.cpp: UnsafeFPShrink = EnableUnsafeFPShrink;
./lib/Transforms/Utils/SimplifyLibCalls.cpp: else if (Callee->hasFnAttribute("unsafe-fp-math")) {
./lib/Transforms/Utils/SimplifyLibCalls.cpp: // Check for unsafe-fp-math = true.
./lib/Transforms/Utils/SimplifyLibCalls.cpp: Attribute Attr = Callee->getFnAttribute("unsafe-fp-math");
./lib/Transforms/Utils/SimplifyLibCalls.cpp: UnsafeFPShrink = true;
./lib/Transforms/Utils/SimplifyLibCalls.cpp: if (UnsafeFPShrink && hasFloatVersion(FuncName))
./lib/Transforms/Utils/SimplifyLibCalls.cpp: : FortifiedSimplifier(TLI), DL(DL), TLI(TLI), UnsafeFPShrink(false),
./lib/Transforms/Vectorize/LoopVectorize.cpp:/// on interleaved accesses is unsafe.
./lib/Transforms/Vectorize/LoopVectorize.cpp: Flags.setUnsafeAlgebra();
./lib/Transforms/Vectorize/SLPVectorizer.cpp: FastMathFlags Unsafe;
./lib/Transforms/Vectorize/SLPVectorizer.cpp: Unsafe.setUnsafeAlgebra();
./lib/Transforms/Vectorize/SLPVectorizer.cpp: Builder.SetFastMathFlags(Unsafe);
./test/Analysis/BranchProbabilityInfo/pr22718.ll:attributes #0 = { inlinehint nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Analysis/BranchProbabilityInfo/pr22718.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Analysis/BranchProbabilityInfo/pr22718.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Analysis/DependenceAnalysis/NonCanonicalizedSubscript.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Analysis/LoopAccessAnalysis/backward-dep-different-types.ll:; CHECK: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/pointer-with-unknown-bounds.ll:; CHECK: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; Following cases are unsafe depdences and are not vectorizable.
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; void unsafe_Read_Write(int *A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK: function 'unsafe_Read_Write':
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK-NEXT: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:define void @unsafe_Read_Write(i32* nocapture %A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; int unsafe_Write_Read(int *A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK: function 'unsafe_Write_Read':
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK-NEXT: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:define i32 @unsafe_Write_Read(i32* nocapture %A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; void unsafe_Write_Write(int *A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK: function 'unsafe_Write_Write':
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK-NEXT: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:define void @unsafe_Write_Write(i32* nocapture %A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK-NEXT: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; void unsafe_unscaled_Read_Write(int *A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK: function 'unsafe_unscaled_Read_Write':
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK-NEXT: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:define void @unsafe_unscaled_Read_Write(i32* nocapture %A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK: function 'unsafe_unscaled_Read_Write2':
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK-NEXT: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; void unsafe_unscaled_Read_Write2(int *A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:define void @unsafe_unscaled_Read_Write2(i32* nocapture %A) {
./test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll:; CHECK-NEXT: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/underlying-objects-2.ll:; CHECK-NEXT: Report: unsafe dependent memory operations in loop
./test/Analysis/LoopAccessAnalysis/unsafe-and-rt-checks.ll:; CHECK: Report: unsafe dependent memory operations in loop
./test/Analysis/ScalarEvolution/pr22674.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Analysis/TypeBasedAliasAnalysis/PR17620.ll:attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Analysis/TypeBasedAliasAnalysis/PR17620.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Analysis/TypeBasedAliasAnalysis/tbaa-path.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Bitcode/drop-debug-info.3.5.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Bitcode/upgrade-tbaa.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/aarch64-2014-08-11-MachineCombinerCrash.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/aarch64-a57-fp-load-balancing.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/CodeGen/AArch64/aarch64-a57-fp-load-balancing.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/CodeGen/AArch64/aarch64-dynamic-stack-layout.ll:attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/aarch64-dynamic-stack-layout.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/aarch64-fix-cortex-a53-835769.ll:attributes #0 = { nounwind readonly "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/aarch64-fix-cortex-a53-835769.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/arm64-indexed-vector-ldst-2.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/arm64-misched-basic-A53.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/arm64-misched-basic-A57.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/arm64-rounding.ll:attributes #1 = { nounwind "unsafe-fp-math"="true" }
./test/CodeGen/AArch64/arm64-triv-disjoint-mem-access.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/CodeGen/AArch64/dag-combine-invaraints.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/dag-combine-invaraints.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AArch64/fdiv-combine.ll:attributes #0 = { "unsafe-fp-math"="true" }
./test/CodeGen/AArch64/stack_guard_remat.ll:attributes #0 = { nounwind sspstrong "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/ds-negative-offset-addressing-mode-loop.ll:; RUN: llc -march=amdgcn -mcpu=SI -verify-machineinstrs -mattr=+load-store-opt,+unsafe-ds-offset-folding < %s | FileCheck -check-prefix=CI --check-prefix=CHECK %s
./test/CodeGen/AMDGPU/ds-negative-offset-addressing-mode-loop.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/ds_read2.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/ds_read2_superreg.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/ds_read2st64.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/ds_write2.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/ds_write2st64.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/ffloor.f64.ll:; RUN: llc -march=amdgcn -mcpu=SI -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=SI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/ffloor.f64.ll:; RUN: llc -march=amdgcn -mcpu=bonaire -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=CI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/ffloor.f64.ll:; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=CI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/fmax_legacy.ll:; RUN: llc -enable-no-nans-fp-math -enable-unsafe-fp-math -march=amdgcn -mcpu=SI < %s | FileCheck -check-prefix=SI-NONAN -check-prefix=SI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/fmax_legacy.ll:; FIXME: Should replace unsafe-fp-math with no signed zeros.
./test/CodeGen/AMDGPU/fmin_legacy.ll:; RUN: llc -enable-no-nans-fp-math -enable-unsafe-fp-math -march=amdgcn -mcpu=SI < %s | FileCheck -check-prefix=SI-NONAN -check-prefix=SI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/fmin_legacy.ll:; FIXME: Should replace unsafe-fp-math with no signed zeros.
./test/CodeGen/AMDGPU/fmul.ll:attributes #0 = { "less-precise-fpmad"="true" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "unsafe-fp-math"="true" }
./test/CodeGen/AMDGPU/frem.ll:; FUNC-LABEL: {{^}}unsafe_frem_f32:
./test/CodeGen/AMDGPU/frem.ll:define void @unsafe_frem_f32(float addrspace(1)* %out, float addrspace(1)* %in1,
./test/CodeGen/AMDGPU/frem.ll:; FUNC-LABEL: {{^}}unsafe_frem_f64:
./test/CodeGen/AMDGPU/frem.ll:define void @unsafe_frem_f64(double addrspace(1)* %out, double addrspace(1)* %in1,
./test/CodeGen/AMDGPU/frem.ll:attributes #0 = { nounwind "unsafe-fp-math"="false" }
./test/CodeGen/AMDGPU/frem.ll:attributes #1 = { nounwind "unsafe-fp-math"="true" }
./test/CodeGen/AMDGPU/fsqrt.ll:; RUN: llc -march=amdgcn -mcpu=tahiti -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck %s
./test/CodeGen/AMDGPU/fsqrt.ll:; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck %s
./test/CodeGen/AMDGPU/fsqrt.ll:; Run with unsafe-fp-math to make sure nothing tries to turn this into 1 / rsqrt(x)
./test/CodeGen/AMDGPU/half.ll:; FIXME: Unsafe math should fold conversions away
./test/CodeGen/AMDGPU/llvm.AMDGPU.fract.f64.ll:; RUN: llc -march=amdgcn -mcpu=SI -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=GCN -check-prefix=SI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.fract.f64.ll:; RUN: llc -march=amdgcn -mcpu=bonaire -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=GCN -check-prefix=CI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.fract.f64.ll:; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=GCN -check-prefix=CI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.fract.ll:; RUN: llc -march=amdgcn -mcpu=SI -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=GCN -check-prefix=SI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.fract.ll:; RUN: llc -march=amdgcn -mcpu=bonaire -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=GCN -check-prefix=CI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.fract.ll:; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=GCN -check-prefix=CI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.fract.ll:; RUN: llc -march=r600 -mcpu=cypress -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=EG -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.rcp.f64.ll:; SI-UNSAFE: v_rsq_f64_e32
./test/CodeGen/AMDGPU/llvm.AMDGPU.rcp.ll:; RUN: llc -march=amdgcn -mcpu=SI -mattr=-fp32-denormals -enable-unsafe-fp-math -verify-machineinstrs < %s | FileCheck -check-prefix=SI-UNSAFE -check-prefix=SI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.rcp.ll:; RUN: llc -march=amdgcn -mcpu=tonga -mattr=-fp32-denormals -enable-unsafe-fp-math -verify-machineinstrs < %s | FileCheck -check-prefix=SI-UNSAFE -check-prefix=SI -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.AMDGPU.rcp.ll:; FIXME: Evergreen only ever does unsafe fp math.
./test/CodeGen/AMDGPU/llvm.AMDGPU.rcp.ll:; SI-UNSAFE: v_rsq_f32_e32
./test/CodeGen/AMDGPU/llvm.dbg.value.ll:attributes #0 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/llvm.SI.sendmsg-m0.ll:attributes #0 = { "ShaderType"="2" "unsafe-fp-math"="true" }
./test/CodeGen/AMDGPU/llvm.sin.ll:; RUN: llc -march=amdgcn -mcpu=SI -enable-unsafe-fp-math < %s | FileCheck -check-prefix=SI -check-prefix=SI-UNSAFE -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.sin.ll:; RUN: llc -march=amdgcn -mcpu=tonga -enable-unsafe-fp-math < %s | FileCheck -check-prefix=SI -check-prefix=SI-UNSAFE -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/llvm.sin.ll:; SI-UNSAFE-NOT: v_add_f32
./test/CodeGen/AMDGPU/llvm.sin.ll:; SI-UNSAFE: 0x3ef47644
./test/CodeGen/AMDGPU/llvm.sin.ll:; SI-UNSAFE: v_mul_f32
./test/CodeGen/AMDGPU/llvm.sin.ll:; SI-UNSAFE-NOT: v_add_f32
./test/CodeGen/AMDGPU/llvm.sin.ll:; SI-UNSAFE: 0x3ea2f983
./test/CodeGen/AMDGPU/llvm.sin.ll:; SI-UNSAFE: v_mul_f32
./test/CodeGen/AMDGPU/llvm.sin.ll:; SI-UNSAFE: 0x3ea2f983
./test/CodeGen/AMDGPU/llvm.sin.ll:; SI-UNSAFE: v_mul_f32
./test/CodeGen/AMDGPU/mad-combine.ll:; Make sure we still form mad even when unsafe math or fp-contract is allowed instead of fma.
./test/CodeGen/AMDGPU/mad-combine.ll:; RUN: llc -march=amdgcn -mcpu=tahiti -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=SI -check-prefix=SI-STD -check-prefix=FUNC %s
./test/CodeGen/AMDGPU/mubuf.ll:attributes #1 = { "ShaderType"="2" "unsafe-fp-math"="true" }
./test/CodeGen/AMDGPU/rsq.ll:; RUN: llc -march=amdgcn -mcpu=SI -mattr=-fp32-denormals -verify-machineinstrs -enable-unsafe-fp-math < %s | FileCheck -check-prefix=SI-UNSAFE -check-prefix=SI %s
./test/CodeGen/AMDGPU/rsq.ll:; SI-UNSAFE: v_rsq_f64_e32
./test/CodeGen/AMDGPU/rsq.ll:; SI-UNSAFE-DAG: v_rsq_f32_e32 [[RSQA:v[0-9]+]], [[A]]
./test/CodeGen/AMDGPU/rsq.ll:; SI-UNSAFE-DAG: v_rcp_f32_e32 [[RCPB:v[0-9]+]], [[B]]
./test/CodeGen/AMDGPU/rsq.ll:; SI-UNSAFE-DAG: v_mul_f32_e32 [[TMP:v[0-9]+]], [[RCPB]], [[RSQA]]
./test/CodeGen/AMDGPU/rsq.ll:; SI-UNSAFE: v_mul_f32_e32 [[RESULT:v[0-9]+]], [[TMP]], [[C]]
./test/CodeGen/AMDGPU/rsq.ll:; SI-UNSAFE: buffer_store_dword [[RESULT]]
./test/CodeGen/AMDGPU/sgpr-copy.ll:attributes #0 = { "ShaderType"="0" "unsafe-fp-math"="true" }
./test/CodeGen/AMDGPU/si-triv-disjoint-mem-access.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/si-triv-disjoint-mem-access.ll:attributes #1 = { "ShaderType"="1" nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/si-vector-hang.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/store.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/AMDGPU/subreg-coalescer-crash.ll:attributes #0 = { "ShaderType"="0" "enable-no-nans-fp-math"="true" "unsafe-fp-math"="true" }
./test/CodeGen/AMDGPU/v_mac.ll:attributes #0 = { "true" "unsafe-fp-math"="true" }
./test/CodeGen/AMDGPU/wrong-transalu-pos-fix.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/2009-10-02-NEONSubregsBug.ll:; RUN: llc -mtriple=armv7-eabi -mcpu=cortex-a8 -enable-unsafe-fp-math < %s
./test/CodeGen/ARM/2012-04-10-DAGCombine.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a9 -enable-unsafe-fp-math %s -o /dev/null
./test/CodeGen/ARM/2014-05-14-DwarfEHCrash.ll:attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv6-linux-gnueabi -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=V6-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv6m-linux-gnueabi -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=V6M-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv6sm-linux-gnueabi -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=V6M-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv6-linux-gnueabi -mcpu=arm1156t2f-s -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=ARM1156T2F-S-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv7m-linux-gnueabi -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=V7M-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=V7-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv8-linux-gnueabi -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=V8-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a5 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A5-DEFAULT-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a5 -mattr=-vfp2 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A5-NOFPU-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a9 -float-abi=soft -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A9-SOFT-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a9 -float-abi=hard -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A9-HARD-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a12 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A12-DEFAULT-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a12 -mattr=-vfp2 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A12-NOFPU-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a15 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A15-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a17 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A17-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-linux-gnueabi -mcpu=cortex-a17 -mattr=-vfp2 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A17-NOFPU-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv6m-linux-gnueabi -mcpu=cortex-m0 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-M0-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv6m-linux-gnueabi -mcpu=cortex-m0plus -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-M0PLUS-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv6m-linux-gnueabi -mcpu=cortex-m1 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-M1-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv6m-linux-gnueabi -mcpu=sc000 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=SC000-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv7m-linux-gnueabi -mcpu=cortex-m3 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-M3-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv7m-linux-gnueabi -mcpu=sc300 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=SC300-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv7m-linux-gnueabi -mcpu=cortex-m4 -float-abi=soft -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-M4-SOFT-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv7m-linux-gnueabi -mcpu=cortex-m4 -float-abi=hard -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-M4-HARD-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv7em-linux-gnueabi -mcpu=cortex-m7 -mattr=-vfp2 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-M7-NOFPU-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=thumbv7em-linux-gnueabi -mcpu=cortex-m7 -mattr=+fp-only-sp -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-M7-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7r-linux-gnueabi -mcpu=cortex-r5 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-R5-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7r-linux-gnueabi -mcpu=cortex-r7 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-R7-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv8-linux-gnueabi -mcpu=cortex-a53 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A53-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv8-linux-gnueabi -mcpu=cortex-a57 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A57-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv8-linux-gnueabi -mcpu=cortex-a72 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A72-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv8.1a-linux-gnueabi -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=GENERIC-ARMV8_1-A-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-none-linux-gnueabi -mcpu=cortex-a7 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A7-CHECK-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-none-linux-gnueabi -mcpu=cortex-a7 -mattr=-vfp2,-vfp3,-vfp4,-neon,-fp16 -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A7-NOFPU-FAST
./test/CodeGen/ARM/build-attributes.ll:; RUN: llc < %s -mtriple=armv7-none-linux-gnueabi -mcpu=cortex-a7 -mattr=+vfp4,-neon -enable-unsafe-fp-math -disable-fp-elim -enable-no-infs-fp-math -enable-no-nans-fp-math -fp-contract=fast | FileCheck %s --check-prefix=CORTEX-A7-FPUV4-FAST
./test/CodeGen/ARM/byval_load_align.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/byval_load_align.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/coalesce-dbgvalue.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/coalesce-dbgvalue.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/fadds.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a8 --enable-unsafe-fp-math %s -o - \
./test/CodeGen/ARM/fmuls.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a8 --enable-unsafe-fp-math %s -o - \
./test/CodeGen/ARM/fnegs.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a8 --enable-unsafe-fp-math %s -o - \
./test/CodeGen/ARM/fnmscs.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a8 --enable-unsafe-fp-math %s -o - \
./test/CodeGen/ARM/fp-fast.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a9 -mattr=+vfp4 -enable-unsafe-fp-math %s -o - \
./test/CodeGen/ARM/fp_convert.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a8 --enable-unsafe-fp-math %s -o - \
./test/CodeGen/ARM/fpcmp-opt.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a8 -mattr=+vfp2 -enable-unsafe-fp-math %s -o - \
./test/CodeGen/ARM/fsubs.ll:; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a8 --enable-unsafe-fp-math %s -o - \
./test/CodeGen/ARM/global-merge-1.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/global-merge-1.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/global-merge-1.ll:attributes #2 = { nounwind readnone ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/isel-v8i32-crash.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/neon-spfp.ll:; RUN: llc < %s -mtriple armv7a-none-linux-gnueabihf -mcpu=cortex-a5 --enable-unsafe-fp-math | FileCheck %s -check-prefix=CHECK-UNSAFEA5
./test/CodeGen/ARM/neon-spfp.ll:; RUN: llc < %s -mtriple armv7a-none-linux-gnueabihf -mcpu=cortex-a8 --enable-unsafe-fp-math | FileCheck %s -check-prefix=CHECK-UNSAFEA8
./test/CodeGen/ARM/neon-spfp.ll:; RUN: llc < %s -mtriple armv7a-none-linux-gnueabihf -mcpu=cortex-a9 --enable-unsafe-fp-math | FileCheck %s -check-prefix=CHECK-UNSAFEA9
./test/CodeGen/ARM/neon-spfp.ll:; RUN: llc < %s -mtriple armv7a-none-linux-gnueabihf -mcpu=cortex-a15 --enable-unsafe-fp-math | FileCheck %s -check-prefix=CHECK-UNSAFEA15
./test/CodeGen/ARM/neon-spfp.ll:; RUN: llc < %s -mtriple armv7a-none-linux-gnueabihf -mcpu=swift --enable-unsafe-fp-math | FileCheck %s -check-prefix=CHECK-UNSAFESWIFT
./test/CodeGen/ARM/neon-spfp.ll:; NEON is not fully IEEE 754 compliant, unless unsafe-math is selected.
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFEA5-LABEL: main:
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFEA8-LABEL: main:
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFEA9-LABEL: main:
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFEA15-LABEL: main:
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFESWIFT-LABEL: main:
./test/CodeGen/ARM/neon-spfp.ll:; Swift is *always* unsafe
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFEA5: vmul.f32 d{{[0-9]*}}
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFEA8: vmul.f32 d{{[0-9]*}}
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFEA9: vmul.f32 s{{[0-9]*}}
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFEA15: vmul.f32 s{{[0-9]*}}
./test/CodeGen/ARM/neon-spfp.ll:; CHECK-UNSAFESWIFT: vmul.f32 d{{[0-9]*}}
./test/CodeGen/ARM/out-of-registers.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/CodeGen/ARM/sched-it-debug-nodes.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/sched-it-debug-nodes.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/stack-protector-bmovpcb_call.ll:attributes #0 = { nounwind optsize ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/stack-protector-bmovpcb_call.ll:attributes #2 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/stack_guard_remat.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/struct-byval-frame-index.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/unsafe-fsub.ll:; RUN: llc -march=arm -mcpu=cortex-a9 -enable-unsafe-fp-math < %s | FileCheck -check-prefix=FAST %s
./test/CodeGen/ARM/vector-spilling.ll:attributes #0 = { noredzone "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/vldm-sched-a9.ll:attributes #0 = { noredzone "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/ARM/vminmaxnm.ll:; RUN: -enable-no-nans-fp-math -enable-unsafe-fp-math | FileCheck %s --check-prefix=CHECK-FAST
./test/CodeGen/Hexagon/addh-sext-trunc.ll:attributes #0 = { nounwind readonly "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/alu64.ll:attributes #0 = { nounwind readnone "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/barrier-flag.ll:attributes #0 = { nounwind optsize readnone "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/barrier-flag.ll:attributes #1 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/base-offset-addr.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/base-offset-post.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/cmp-extend.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/cmp.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/expand-condsets-rm-segment.ll:attributes #0 = { noinline nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/expand-condsets-rm-segment.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/hwloop-crit-edge.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "ssp-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/hwloop-preheader.ll:attributes #0 = { nounwind readonly "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/mem-fi-add.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/mem-fi-add.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/postinc-offset.ll:attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/usr-ovf-dep.ll:attributes #0 = { nounwind readnone "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/vect/vect-bad-bitcast.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/vect/vect-bad-bitcast.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/vect/vect-extract.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/vect/vect-shuffle.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Hexagon/vect/vect-vshifts.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/beqzc.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/beqzc1.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/brsize3.ll:attributes #0 = { noreturn nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/brsize3a.ll:attributes #0 = { noreturn nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/ci2.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/cmplarge.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/cmplarge.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/const1.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/const4a.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/const4a.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/const6.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/const6.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/const6a.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/ctlz.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/delay-slot-fill-forward.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="mips32r2" "target-features"="+mips32r2,+nooddspreg,+fpxx" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/f16abs.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/f16abs.ll:attributes #1 = { nounwind optsize readnone "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/Fast-ISel/br1.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/Fast-ISel/loadstore2.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/Fast-ISel/loadstrconst.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/Fast-ISel/logopm.ll:attributes #0 = { noinline nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/Fast-ISel/logopm.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/Fast-ISel/simplestorefp1.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/Fast-ISel/simplestorei.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/fp16instrinsmc.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/fp16instrinsmc.ll:attributes #1 = { nounwind readnone "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/fpneeded.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/fpnotneeded.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/hf16call32.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/hf16call32.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/hf16call32_body.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/hfptrcall.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/hfptrcall.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/l3mc.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/lcb2.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/lcb3c.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/lcb4a.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/lcb5.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mbrsize4a.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mbrsize4a.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16-hf-attr-2.ll: "unsafe-fp-math"="false" "use-soft-float"="false"
./test/CodeGen/Mips/mips16-hf-attr-2.ll: "unsafe-fp-math"="false" "use-soft-float"="true"
./test/CodeGen/Mips/mips16-hf-attr-2.ll: "unsafe-fp-math"="false" "use-soft-float"="true"
./test/CodeGen/Mips/mips16-hf-attr.ll: "unsafe-fp-math"="false" "use-soft-float"="false"
./test/CodeGen/Mips/mips16-hf-attr.ll: "unsafe-fp-math"="false" "use-soft-float"="true"
./test/CodeGen/Mips/mips16-hf-attr.ll: "unsafe-fp-math"="false" "use-soft-float"="true"
./test/CodeGen/Mips/mips16_32_1.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_10.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "nomips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_10.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_10.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "nomips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_3.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_3.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_3.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_4.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_4.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_4.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_5.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_5.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_5.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "nomips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_6.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_6.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_6.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "nomips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_7.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_7.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_7.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_8.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_8.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_8.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_8.ll:attributes #3 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_9.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_9.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/mips16_32_9.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/nomips16.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "mips16" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/nomips16.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/powif64_16.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/s2rem.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/s2rem.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/sel1c.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/sel2c.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/simplebr.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/simplebr.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
./test/CodeGen/Mips/sr1.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/sr1.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/tnaked.ll:attributes #0 = { naked noinline nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Mips/tnaked.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/MSP430/cc_args.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/MSP430/cc_ret.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/NVPTX/bug21465.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/NVPTX/bug22322.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/CodeGen/NVPTX/fast-math.ll:attributes #0 = { "unsafe-fp-math" = "true" }
./test/CodeGen/NVPTX/pr17529.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/2013-07-01-PHIElimBug.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/addrfuncstr.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/addrfuncstr.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/asm-constraints.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/asym-regclass-copy.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/buildvec_canonicalize.ll:; RUN: llc < %s -mattr=-vsx -march=ppc32 -mattr=+altivec --enable-unsafe-fp-math | FileCheck %s
./test/CodeGen/PowerPC/cr-spills.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/crypto_bifs.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/ctr-cleanup.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/ctrloop-intrin.ll:attributes #1 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/div-e-32.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/div-e-all.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/extra-toc-reg-deps.ll:attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="a2q" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/extra-toc-reg-deps.ll:attributes #1 = { inlinehint "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="a2q" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/fdiv-combine.ll:attributes #0 = { "unsafe-fp-math"="true" }
./test/CodeGen/PowerPC/fma-mutate.ll:; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -enable-unsafe-fp-math -mattr=+vsx | FileCheck %s
./test/CodeGen/PowerPC/frameaddr.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/frameaddr.ll:attributes #3 = { nounwind naked "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/glob-comp-aa-crash.ll:attributes #0 = { optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/glob-comp-aa-crash.ll:attributes #1 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/glob-comp-aa-crash.ll:attributes #2 = { noreturn optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/i64_fp_round.ll:; Also check that with -enable-unsafe-fp-math we do not get that extra
./test/CodeGen/PowerPC/i64_fp_round.ll:; RUN: llc -mcpu=pwr7 -mattr=-fpcvt -enable-unsafe-fp-math < %s | FileCheck %s -check-prefix=CHECK-UNSAFE
./test/CodeGen/PowerPC/i64_fp_round.ll:; CHECK-UNSAFE-NOT: isel
./test/CodeGen/PowerPC/isel-rc-nox0.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "ssp-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/negctr.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/ppc-empty-fs.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "target-features"="" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/ppc32-lshrti3.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/pr17168.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/pr17354.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/pr18663-2.ll:attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/pr18663-2.ll:attributes #1 = { noreturn "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/pr18663-2.ll:attributes #2 = { inlinehint "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/pr24546.ll:attributes #0 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="ppc64le" "target-features"="+altivec,+bpermd,+crypto,+direct-move,+extdiv,+power8-vector,+vsx,-qpx" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/pr24546.ll:attributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="ppc64le" "target-features"="+altivec,+bpermd,+crypto,+direct-move,+extdiv,+power8-vector,+vsx,-qpx" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/qpx-recipest.ll:; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=a2q -enable-unsafe-fp-math | FileCheck %s
./test/CodeGen/PowerPC/qpx-rounding-ops.ll:; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=a2q -enable-unsafe-fp-math | FileCheck -check-prefix=CHECK-FM %s
./test/CodeGen/PowerPC/recipest.ll:; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -enable-unsafe-fp-math -mattr=-vsx | FileCheck %s
./test/CodeGen/PowerPC/recipest.ll:; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -enable-unsafe-fp-math -mattr=-vsx -recip=sqrtf:0,sqrtd:0 | FileCheck %s -check-prefix=CHECK-NONR
./test/CodeGen/PowerPC/reloc-align.ll:attributes #0 = { nounwind readonly "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/sjlj.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/toc-load-sched-bug.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/toc-load-sched-bug.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/toc-load-sched-bug.ll:attributes #2 = { inlinehint nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/toc-load-sched-bug.ll:attributes #4 = { noreturn nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/toc-load-sched-bug.ll:attributes #5 = { nounwind readonly "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/toc-load-sched-bug.ll:attributes #6 = { nobuiltin nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/unal4-std.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/PowerPC/unsafe-math.ll:; RUN: llc < %s -mattr=-vsx -march=ppc32 -enable-unsafe-fp-math | \
./test/CodeGen/PowerPC/vsx-fma-mutate-trivial-copy.ll:attributes #0 = { nounwind "no-infs-fp-math"="true" "no-nans-fp-math"="true" "target-cpu"="pwr7" "unsafe-fp-math"="true" }
./test/CodeGen/PowerPC/vsx-recip-est.ll:; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr8 -enable-unsafe-fp-math | FileCheck %s
./test/CodeGen/PowerPC/vsx-recip-est.ll:; RUN: llc < %s -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr8 -enable-unsafe-fp-math | FileCheck %s
./test/CodeGen/PowerPC/zero-not-run.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Thumb/fastcc.ll:attributes #0 = { optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Thumb/ldm-merge-call.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Thumb/ldm-merge-call.ll:attributes #1 = { optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Thumb/PR17309.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Thumb/PR17309.ll:attributes #2 = { optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Thumb/stack_guard_remat.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Thumb/stm-merge.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/Thumb2/stack_guard_remat.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-alloca-sink.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-alloca-sink.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-all-win32.ll:attributes #0 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-all.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-all.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-and-throw.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-and-throw.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-scalar.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-scalar.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-unwind.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-unwind.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-catch-unwind.ll:attributes #4 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-frame-vars.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-frame-vars.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-inalloca.ll:attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-inalloca.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-min-unwind.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-min-unwind.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-mixed-catch-and-cleanup.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-mixed-catch-and-cleanup.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-mixed-catch-and-cleanup.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-multi-catch.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-multi-catch.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nested-1.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nested-1.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nested-2.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nested-2.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nested-3.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nested-3.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nested-rethrow.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nonalloca-frame-values.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-nonalloca-frame-values.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-prepared-catch-all.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-prepared-catch-all.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-prepared-catch-reordered.ll:attributes #0 = { noreturn uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-prepared-catch-reordered.ll:attributes #1 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" "wineh-parent"="main" }
./test/CodeGen/WinEH/cppeh-prepared-catch-reordered.ll:attributes #4 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-prepared-catch.ll:attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" "wineh-parent"="?f@@YAXXZ" }
./test/CodeGen/WinEH/cppeh-prepared-catch.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-prepared-cleanups.ll:attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" "wineh-parent"="?test1@@YAXXZ" }
./test/CodeGen/WinEH/cppeh-prepared-cleanups.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-prepared-cleanups.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" "wineh-parent"="?test2@@YAX_N@Z" }
./test/CodeGen/WinEH/cppeh-prepared-cleanups.ll:attributes #3 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-shared-empty-catch.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-shared-empty-catch.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-similar-catch-blocks.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-similar-catch-blocks.ll:attributes #3 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/cppeh-state-calc-1.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" "wineh-parent"="?test@@YAXXZ" }
./test/CodeGen/WinEH/cppeh-state-calc-1.ll:attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/seh-outlined-finally-win32.ll:attributes #0 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/seh-outlined-finally-win32.ll:attributes #1 = { noinline nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/seh-outlined-finally-win32.ll:attributes #3 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/seh-outlined-finally.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/seh-outlined-finally.ll:attributes #1 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/seh-outlined-finally.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/seh-prepared-basic.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" "wineh-parent"="do_except" }
./test/CodeGen/WinEH/seh-prepared-basic.ll:attributes #1 = { noinline nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/WinEH/seh-prepared-basic.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/2006-05-22-FPSetEQ.ll:; RUN: llc < %s -march=x86 -mattr=-sse -enable-unsafe-fp-math -enable-no-nans-fp-math | FileCheck %s -check-prefix=NONANS
./test/CodeGen/X86/2008-05-01-InvalidOrdCompare.ll:; RUN: llc < %s -enable-unsafe-fp-math -march=x86 | grep jp
./test/CodeGen/X86/2012-08-28-UnsafeMathCrash.ll:; RUN: llc < %s -enable-unsafe-fp-math
./test/CodeGen/X86/2013-03-13-VEX-DestReg.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/atom-fixup-lea4.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/avx-minmax.ll:; RUN: llc < %s -march=x86-64 -mattr=+avx -asm-verbose=false -enable-unsafe-fp-math -enable-no-nans-fp-math | FileCheck -check-prefix=UNSAFE %s
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE-LABEL: maxpd:
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE: vmaxpd {{.+}}, %xmm
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE-LABEL: minpd:
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE: vminpd {{.+}}, %xmm
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE-LABEL: maxps:
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE: vmaxps {{.+}}, %xmm
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE-LABEL: minps:
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE: vminps {{.+}}, %xmm
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE-LABEL: vmaxpd:
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE: vmaxpd {{.+}}, %ymm
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE-LABEL: vminpd:
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE: vminpd {{.+}}, %ymm
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE-LABEL: vmaxps:
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE: vmaxps {{.+}}, %ymm
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE-LABEL: vminps:
./test/CodeGen/X86/avx-minmax.ll:; UNSAFE: vminps {{.+}}, %ymm
./test/CodeGen/X86/dag-optnone.ll:attributes #0 = { "unsafe-fp-math"="true" }
./test/CodeGen/X86/dag-optnone.ll:attributes #1 = { noinline optnone "unsafe-fp-math"="true" }
./test/CodeGen/X86/dagcombine-unsafe-math.ll:; RUN: llc < %s -enable-unsafe-fp-math -mtriple=x86_64-apple-darwin -mcpu=corei7-avx | FileCheck %s
./test/CodeGen/X86/dbg-changes-codegen-branch-folding.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/dbg-changes-codegen-branch-folding.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/dbg-changes-codegen.ll:attributes #0 = { nounwind readonly uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/dbg-changes-codegen.ll:attributes #1 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/dbg-combine.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/exedepsfix-broadcast.ll:; RUN: llc -O3 -mtriple=x86_64-apple-macosx -o - < %s -mattr=+avx2 -enable-unsafe-fp-math -mcpu=core2 | FileCheck %s
./test/CodeGen/X86/fabs.ll:; RUN: llc < %s -mtriple=i686-apple-macosx -mattr=-sse,-sse2,-sse3 -enable-unsafe-fp-math -enable-no-nans-fp-math | FileCheck %s --check-prefix=UNSAFE
./test/CodeGen/X86/fabs.ll:; UNSAFE-LABEL: test1:
./test/CodeGen/X86/fabs.ll:; UNSAFE: {{^[ \t]+fabs$}}
./test/CodeGen/X86/fabs.ll:; UNSAFE-NOT: fabs
./test/CodeGen/X86/fabs.ll:; UNSAFE-LABEL: test2:
./test/CodeGen/X86/fabs.ll:; UNSAFE: {{^[ \t]+fabs$}}
./test/CodeGen/X86/fabs.ll:; UNSAFE-NOT: fabs
./test/CodeGen/X86/fabs.ll:; UNSAFE-LABEL: test3:
./test/CodeGen/X86/fabs.ll:; UNSAFE: {{^[ \t]+fabs$}}
./test/CodeGen/X86/fabs.ll:; UNSAFE-NOT: fabs
./test/CodeGen/X86/fastmath-float-half-conversion.ll:attributes #0 = { nounwind readnone uwtable "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/CodeGen/X86/fastmath-float-half-conversion.ll:attributes #1 = { nounwind readnone uwtable "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/fdiv-combine.ll:attributes #0 = { "unsafe-fp-math"="true" }
./test/CodeGen/X86/fdiv.ll:; RUN: llc < %s -march=x86-64 -enable-unsafe-fp-math | FileCheck %s
./test/CodeGen/X86/float-conv-elim.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/fmul-combines.ll:attributes #0 = { "less-precise-fpmad"="true" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "unsafe-fp-math"="true" }
./test/CodeGen/X86/fmul-zero.ll:; RUN: llc < %s -march=x86-64 -enable-unsafe-fp-math | not grep mulps
./test/CodeGen/X86/fold-tied-op.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/fp-double-rounding.ll:; RUN: llc < %s -enable-unsafe-fp-math | FileCheck %s --check-prefix=CHECK --check-prefix=UNSAFE
./test/CodeGen/X86/fp-double-rounding.ll:; UNSAFE: callq __trunctfsf2
./test/CodeGen/X86/fp-double-rounding.ll:; UNSAFE-NOT: cvt
./test/CodeGen/X86/fp-fast.ll:; RUN: llc -mtriple=x86_64-unknown-unknown -mattr=avx -enable-unsafe-fp-math < %s | FileCheck %s
./test/CodeGen/X86/fsxor-alignment.ll:; RUN: llc < %s -march=x86 -mattr=+sse2 -enable-unsafe-fp-math | \
./test/CodeGen/X86/machine-combiner.ll:; RUN: llc -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -mattr=sse -enable-unsafe-fp-math < %s | FileCheck %s --check-prefix=SSE
./test/CodeGen/X86/machine-combiner.ll:; RUN: llc -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -mattr=avx -enable-unsafe-fp-math < %s | FileCheck %s --check-prefix=AVX
./test/CodeGen/X86/machine-trace-metrics-crash.ll:; RUN: llc -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -mattr=sse -enable-unsafe-fp-math < %s | FileCheck %s
./test/CodeGen/X86/misched-copy.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/misched-matmul.ll:attributes #0 = { noinline nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/neg_fp.ll:; Test that when we don't -enable-unsafe-fp-math, we don't do the optimization
./test/CodeGen/X86/negate-add-zero.ll:; RUN: llc < %s -enable-unsafe-fp-math -march=x86 | not grep xor
./test/CodeGen/X86/negative-sin.ll:; RUN: llc < %s -enable-unsafe-fp-math -march=x86-64 | FileCheck %s
./test/CodeGen/X86/pr18846.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/ragreedy-last-chance-recoloring.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/recip-fastmath.ll:attributes #0 = { "unsafe-fp-math"="true" }
./test/CodeGen/X86/seh-except-finally.ll:attributes #0 = { noinline nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/seh-except-finally.ll:attributes #1 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/seh-except-finally.ll:attributes #2 = { noinline nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/seh-except-finally.ll:attributes #3 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/sincos-opt.ll:; RUN: llc < %s -mtriple=x86_64-pc-linux-gnu -mcpu=core2 -enable-unsafe-fp-math | FileCheck %s --check-prefix=GNU_SINCOS
./test/CodeGen/X86/sincos.ll:; RUN: llc < %s -mtriple=i686-apple-macosx -mattr=-sse,-sse2,-sse3 -enable-unsafe-fp-math | FileCheck %s --check-prefix=SIN
./test/CodeGen/X86/sincos.ll:; RUN: llc < %s -mtriple=i686-apple-macosx -mattr=-sse,-sse2,-sse3 -enable-unsafe-fp-math | FileCheck %s --check-prefix=COS
./test/CodeGen/X86/sqrt-fastmath.ll:attributes #0 = { "unsafe-fp-math"="true" }
./test/CodeGen/X86/sse-minmax.ll:; RUN: llc < %s -march=x86-64 -mtriple=x86_64-apple-darwin -mcpu=nehalem -asm-verbose=false -enable-unsafe-fp-math -enable-no-nans-fp-math | FileCheck -check-prefix=UNSAFE %s
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ogt:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: olt:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ogt_inverse:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: olt_inverse:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: oge:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ole:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: oge_inverse:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ole_inverse:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ogt_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: olt_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ogt_inverse_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: olt_inverse_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: oge_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ole_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: oge_inverse_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ole_inverse_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ugt:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ult:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ugt_inverse:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ult_inverse:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: uge:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ule:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: uge_inverse:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ule_inverse:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ugt_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ult_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ugt_inverse_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ult_inverse_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: uge_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ule_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: uge_inverse_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ule_inverse_x:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: xorp{{[sd]}} %xmm1, %xmm1
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ogt_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: olt_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ogt_inverse_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: olt_inverse_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: oge_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ole_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: oge_inverse_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ole_inverse_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ugt_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ult_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ugt_inverse_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ult_inverse_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: uge_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ule_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: uge_inverse_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: ule_inverse_y:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: clampTo3k_a:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: clampTo3k_b:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: clampTo3k_c:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: clampTo3k_d:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: clampTo3k_e:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: clampTo3k_f:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: clampTo3k_g:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: clampTo3k_h:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minsd {{[^,]*}}, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: test_maxpd:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxpd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: test_minpd:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minpd %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: test_maxps:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxps %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: test_minps:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minps %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: test_maxps_illegal_v2f32:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxps %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: test_minps_illegal_v2f32:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minps %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: test_maxps_illegal_v3f32:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: maxps %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-LABEL: test_minps_illegal_v3f32:
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: minps %xmm1, %xmm0
./test/CodeGen/X86/sse-minmax.ll:; UNSAFE-NEXT: ret
./test/CodeGen/X86/stack-protector-vreg-to-vreg-copy.ll:attributes #0 = { nounwind sspreq "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/stack-protector-vreg-to-vreg-copy.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/stack_guard_remat.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/vec_unsafe-fp-math.ll:; RUN: llc < %s -enable-unsafe-fp-math -mtriple=x86_64-unknown-unknown -mcpu=corei7 | FileCheck %s
./test/CodeGen/X86/vec_unsafe-fp-math.ll:; Make sure that vectors get the same benefits as scalars when using unsafe-fp-math.
./test/CodeGen/X86/x86-64-double-shifts-Oz-Os-O2.ll:attributes #0 = { minsize nounwind optsize readnone uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/x86-64-double-shifts-Oz-Os-O2.ll:attributes #1 = { nounwind optsize readnone uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/CodeGen/X86/x86-64-double-shifts-Oz-Os-O2.ll:attributes #2= { nounwind readnone uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/ARM/lowerbdgdeclare_vla.ll:attributes #0 = { nounwind optsize readnone "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="cortex-a8" "target-features"="+neon,+vfp3" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/block-asan.ll:attributes #0 = { nounwind ssp uwtable sanitize_address "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/block-asan.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/asan-module-ctor.ll:attributes #0 = { nounwind sanitize_address "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/asm.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/asm.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/cpp-mangling.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/multifile.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/multifile.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/multifunction.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/multifunction.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/simple.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/simple.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/tail-call-without-lexical-scopes.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/COFF/tail-call-without-lexical-scopes.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/constant-pointers.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/cross-cu-inlining.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/cross-cu-inlining.ll:attributes #1 = { alwaysinline nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/cross-cu-linkonce-distinct.ll:attributes #0 = { inlinehint nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/cross-cu-linkonce.ll:attributes #0 = { inlinehint nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/cu-range-hole.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/cu-ranges.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/dead-argument-order.ll:attributes #0 = { nounwind readnone uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/debug-info-always-inline.ll:attributes #0 = { alwaysinline nounwind sspstrong "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/debug-info-always-inline.ll:attributes #2 = { nounwind sspstrong "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/debug-info-always-inline.ll:attributes #3 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/enum-types.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/enum.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/global.ll:attributes #0 = { nounwind readnone uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/incorrect-variable-debugloc.ll:attributes #0 = { noreturn sanitize_address "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/incorrect-variable-debugloc.ll:attributes #1 = { sanitize_address "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/incorrect-variable-debugloc.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/incorrect-variable-debugloc1.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/incorrect-variable-debugloc1.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/inline-no-debug-info.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/inline-scopes.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/inline-scopes.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/inlined-arguments.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/inlined-arguments.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/Inputs/gmlt.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/Inputs/gmlt.ll:attributes #1 = { alwaysinline nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/Inputs/line.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/lto-comp-dir.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/lto-comp-dir.ll:attributes #1 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/member-order.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/Mips/fn-call-line.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/Mips/fn-call-line.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/missing-abstract-variable.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/missing-abstract-variable.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/multiline.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/multiline.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/namespace.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/namespace_function_definition.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/namespace_inline_function_definition.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/namespace_inline_function_definition.ll:attributes #1 = { alwaysinline nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/nodebug.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/PR20038.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/PR20038.ll:attributes #1 = { alwaysinline nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/restrict.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/Sparc/gnu-window-save.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/Sparc/gnu-window-save.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/sugared-constants.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/sugared-constants.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/tu-composite.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/unconditional-branch.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/version.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/arguments.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/coff_debug_info_type.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/coff_relative_names.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/cu-ranges-odr.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/cu-ranges.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/dbg_value_direct.ll:attributes #0 = { sanitize_address uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "ssp-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/dbg_value_direct.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "ssp-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/debug-dead-local-var.ll:attributes #0 = { nounwind readnone uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/debug-info-blocks.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/debug-loc-asan.ll:attributes #0 = { nounwind sanitize_address uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/debug-loc-empty-entries.ll:attributes #0 = { noreturn nounwind readnone "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/debug-loc-offset.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/debug-loc-offset.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/debug-ranges-offset.ll:attributes #0 = { sanitize_memory uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/debug-ranges-offset.ll:attributes #1 = { nobuiltin "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/decl-derived-member.ll:attributes #0 = { inlinehint nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/decl-derived-member.ll:attributes #1 = { inlinehint uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/decl-derived-member.ll:attributes #4 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/discriminator.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/DW_AT_stmt_list_sec_offset.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll:attributes #0 = { nounwind readnone uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll:attributes #1 = { nounwind readonly uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/dwarf-pubnames-split.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/fission-inline.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/fission-inline.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/fission-ranges.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/generate-odr-hash.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/ghost-sdnode-dbgvalues.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/gnu-public-names.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/inline-member-function.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/inline-seldag-test.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/inlined-formal-parameter.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="core2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/inlined-formal-parameter.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="core2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/lexical_block.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/line-info.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/low-pc-cu.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/mi-print.ll:attributes #0 = { nounwind readnone ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="core2" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/nodebug_with_debug_loc.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/nodebug_with_debug_loc.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/objc-property-void.ll:attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/parameters.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/parameters.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/pr19307.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/pr19307.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/recursive_inlining.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/recursive_inlining.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/sret.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/sret.ll:attributes #2 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/sret.ll:attributes #4 = { nobuiltin nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/template.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/DebugInfo/X86/tls.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Instrumentation/AddressSanitizer/global_metadata.ll:attributes #1 = { nounwind sanitize_address "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Instrumentation/AddressSanitizer/X86/asm_mov.ll:attributes #0 = { nounwind uwtable sanitize_address "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Instrumentation/AddressSanitizer/X86/asm_rep_movs.ll:attributes #0 = { nounwind sanitize_address uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Instrumentation/DataFlowSanitizer/debug.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Instrumentation/MemorySanitizer/store-origin.ll:attributes #0 = { nounwind sanitize_memory "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Instrumentation/SanitizerCoverage/coverage-dbg.ll:attributes #0 = { sanitize_address nounwind readonly uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Instrumentation/SanitizerCoverage/coverage2-dbg.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" sanitize_address}
./test/JitListener/multiple.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/JitListener/simple.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/Inputs/type-unique-inheritance-a.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/Inputs/type-unique-inheritance-b.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/Inputs/type-unique-inheritance-b.ll:attributes #2 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/Inputs/type-unique-inheritance-b.ll:attributes #3 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/Inputs/type-unique-simple2-a.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/Inputs/type-unique-simple2-b.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/Inputs/type-unique-simple2-b.ll:attributes #2 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/Inputs/type-unique-simple2-b.ll:attributes #3 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/type-unique-simple-a.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/type-unique-simple-b.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/type-unique-simple-b.ll:attributes #2 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/type-unique-simple-b.ll:attributes #3 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/type-unique-type-array-a.ll:attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/type-unique-type-array-a.ll:attributes #2 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/type-unique-type-array-b.ll:attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Linker/type-unique-type-array-b.ll:attributes #2 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/MC/ELF/cfi-version.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/MC/ELF/cfi-version.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/MC/MachO/tlv-bss.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Other/attribute-comment.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" uwtable "no-frame-pointer-elim"="true" readnone "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/tools/dsymutil/Inputs/frame-dw2.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="yonah" "target-features"="+cx16,+sse,+sse2,+sse3" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/tools/dsymutil/Inputs/frame-dw2.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="yonah" "target-features"="+cx16,+sse,+sse2,+sse3" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/tools/dsymutil/Inputs/frame-dw4.ll:attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="yonah" "target-features"="+cx16,+sse,+sse2,+sse3" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/tools/dsymutil/Inputs/frame-dw4.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="yonah" "target-features"="+cx16,+sse,+sse2,+sse3" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/AddDiscriminators/basic.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/AddDiscriminators/first-only.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/AddDiscriminators/multiple.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/AddDiscriminators/no-discriminators.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/ArgumentPromotion/fp80.ll: tail call i8 @UseLongDoubleUnsafely(%union.u* byval align 16 bitcast (%struct.s* @b to %union.u*))
./test/Transforms/ArgumentPromotion/fp80.ll:; CHECK: internal i8 @UseLongDoubleUnsafely(%union.u* byval align 16 %arg) {
./test/Transforms/ArgumentPromotion/fp80.ll:define internal i8 @UseLongDoubleUnsafely(%union.u* byval align 16 %arg) {
./test/Transforms/BBVectorize/X86/wr-aliases.ll:attributes #1 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/DeadArgElim/dbginfo.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/DeadArgElim/dbginfo.ll:attributes #1 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/GCOVProfiling/global-ctor.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/GCOVProfiling/linezero.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/GCOVProfiling/linezero.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/GCOVProfiling/return-block.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/GCOVProfiling/return-block.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/GVN/cond_br2.ll:attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/GVN/cond_br2.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/GVN/cond_br2.ll:attributes #3 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/IndVarSimplify/widen-nsw.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Inline/blockaddress.ll:; which could be unsafe
./test/Transforms/Inline/debug-info-duplicate-calls.ll:attributes #0 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Inline/debug-info-duplicate-calls.ll:attributes #1 = { alwaysinline inlinehint uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Inline/debug-info-duplicate-calls.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Inline/inline-vla.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Inline/inline-vla.ll:attributes #1 = { inlinehint nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Inline/optimization-remarks.ll:attributes #0 = { alwaysinline nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Inline/optimization-remarks.ll:attributes #1 = { noinline nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Inline/optimization-remarks.ll:attributes #2 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/InstCombine/div-shift-crash.ll:attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/InstCombine/double-float-shrink-1.ll:; unsafe-fp-math function attribute on a math lib
./test/Transforms/InstCombine/double-float-shrink-1.ll:; is valid even without unsafe-fp-math.
./test/Transforms/InstCombine/double-float-shrink-1.ll:attributes #1 = { "unsafe-fp-math"="true" }
./test/Transforms/InstCombine/fast-math.ll:attributes #0 = { "unsafe-fp-math" = "true" }
./test/Transforms/InstCombine/fmul.ll:; With unsafe/fast math, sqrt(X) * sqrt(X) is just X.
./test/Transforms/InstCombine/fmul.ll:; With unsafe/fast math, sqrt(X) * sqrt(X) is just X,
./test/Transforms/InstCombine/inline-intrinsic-assert.ll:attributes #0 = { "unsafe-fp-math"="true" }
./test/Transforms/InstCombine/no_cgscc_assert.ll:attributes #0 = { readnone "unsafe-fp-math"="true" }
./test/Transforms/InstCombine/overflow.ll:; promote it since the add.off instruction has another use, and 2) it is unsafe
./test/Transforms/InstCombine/select-extractelement.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LICM/2007-09-24-PromoteNullValue.ll:; Do not promote null value because it may be unsafe to do so.
./test/Transforms/LICM/speculate.ll:; UDiv is unsafe to speculate if the denominator is not known non-zero.
./test/Transforms/LICM/speculate.ll:; CHECK-LABEL: @unsafe_udiv(
./test/Transforms/LICM/speculate.ll:define void @unsafe_udiv(i64 %x, i64 %m, i64 %n, i32* %p, i64* %q) nounwind {
./test/Transforms/LICM/speculate.ll:; SDiv is unsafe to speculate if the denominator is not known non-zero.
./test/Transforms/LICM/speculate.ll:; CHECK-LABEL: @unsafe_sdiv_a(
./test/Transforms/LICM/speculate.ll:define void @unsafe_sdiv_a(i64 %x, i64 %m, i64 %n, i32* %p, i64* %q) nounwind {
./test/Transforms/LICM/speculate.ll:; SDiv is unsafe to speculate if the denominator is not known to have a zero bit.
./test/Transforms/LICM/speculate.ll:; CHECK-LABEL: @unsafe_sdiv_b(
./test/Transforms/LICM/speculate.ll:define void @unsafe_sdiv_b(i64 %x, i64 %m, i64 %n, i32* %p, i64* %q) nounwind {
./test/Transforms/LICM/speculate.ll:; SDiv is unsafe to speculate inside an infinite loop.
./test/Transforms/LICM/speculate.ll:define void @unsafe_sdiv_c(i64 %a, i64 %b, i64* %p) {
./test/Transforms/LICM/volatile-alias.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopDistribute/basic.ll:; We should distribute this loop into a safe (2nd statement) and unsafe loop
./test/Transforms/LoopDistribute/basic.ll:; ANALYSIS-NEXT: Report: unsafe dependent memory operations in loop
./test/Transforms/LoopStrengthReduce/pr18165.ll:attributes #0 = { nounwind optsize ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopStrengthReduce/pr18165.ll:attributes #1 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopStrengthReduce/X86/pr17473.ll:attributes #0 = { nounwind optsize ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopStrengthReduce/X86/pr17473.ll:attributes #1 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/debugloc.ll:attributes #0 = { nounwind readonly ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "unsafe-fp-math"="true" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/incorrect-dom-info.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/interleaved-accesses.ll:attributes #0 = { "unsafe-fp-math"="true" }
./test/Transforms/LoopVectorize/metadata-width.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/multiple-address-spaces.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/optsize.ll:attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/runtime-check-address-space.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/runtime-check-readonly-address-space.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/scev-exitlim-crash.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/scev-exitlim-crash.ll:attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SafeStack/addr-taken.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/array-aligned.ll: ; CHECK: %[[USP:.*]] = load i8*, i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/array-aligned.ll: ; CHECK: store i8* %[[USST]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/array-aligned.ll: ; CHECK: store i8* %[[USP]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/array.ll: ; CHECK: %[[USP:.*]] = load i8*, i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/array.ll: ; CHECK: store i8* %[[USST]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/array.ll: ; CHECK: store i8* %[[USP]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/call.ll: ; CHECK-NOT: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/cast.ll: ; CHECK-NOT: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/constant-gep-call.ll: ; CHECK-NOT: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/constant-gep.ll: ; CHECK-NOT: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/constant-geps.ll: ; CHECK-NOT: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/dynamic-alloca.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-addr-pointer.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-bitcast-store.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-bitcast-store2.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-call.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-casted-pointer.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-gep-call.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-gep-invoke.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-gep-negative.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-gep-ptrtoint.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-gep-store.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-phi-call.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-select-call.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/escape-vector.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/invoke.ll: ; CHECK: %[[SP:.*]] = load i8*, i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/invoke.ll: ; CHECK-NEXT: store i8* %[[STATICTOP]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/no-attr.ll:; CHECK-NOT: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/no-attr.ll: ; CHECK-NOT: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/phi-cycle.ll: ; CHECK: __safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/setjmp.ll: ; CHECK: %[[SP:.*]] = load i8*, i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/setjmp.ll: ; CHECK-NEXT: store i8* %[[STATICTOP]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/setjmp2.ll: ; CHECK-NEXT: %[[SP:.*]] = load i8*, i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/setjmp2.ll: ; CHECK-NEXT: %[[SP2:.*]] = load i8*, i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/setjmp2.ll: ; CHECK-NEXT: store i8* %[[INTTOPTR]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/setjmp2.ll: ; CHECK-NEXT: store i8* %[[INTTOPTR]], i8** %unsafe_stack_dynamic_ptr
./test/Transforms/SafeStack/setjmp2.ll: ; CHECK-NEXT: store i8* %[[LOAD]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/struct.ll: ; CHECK: %[[USP:.*]] = load i8*, i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/struct.ll: ; CHECK: store i8* %[[USST]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SafeStack/struct.ll: ; CHECK: store i8* %[[USP]], i8** @__safestack_unsafe_stack_ptr
./test/Transforms/SampleProfile/branch.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SampleProfile/branch.ll:attributes #1 = { nounwind readonly "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SampleProfile/branch.ll:attributes #2 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SampleProfile/propagate.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SampleProfile/propagate.ll:attributes #1 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SampleProfile/propagate.ll:attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/Scalarizer/dbginfo.ll:attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SimplifyCFG/AArch64/prefer-fma.ll:; RUN: opt < %s -mtriple=aarch64-linux-gnu -simplifycfg -enable-unsafe-fp-math -S >%t
./test/Transforms/SLPVectorizer/X86/consecutive-access.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SLPVectorizer/X86/crash_bullet3.ll:attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SLPVectorizer/X86/crash_flop7.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SLPVectorizer/X86/crash_smallpt.ll:attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SLPVectorizer/X86/debug_info.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll:attributes #0 = { nounwind ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SLPVectorizer/X86/non-vectorizable-intrinsic.ll:attributes #0 = { alwaysinline nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/SLPVectorizer/X86/pr16899.ll:attributes #0 = { noreturn nounwind readonly "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/StraightLineStrengthReduce/AMDGPU/pr23975.ll:attributes #0 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "target-cpu"="tahiti" "unsafe-fp-math"="false" "use-soft-float"="false" }
./test/Transforms/StructurizeCFG/nested-loop-order.ll:attributes #0 = { "ShaderType"="1" "enable-no-nans-fp-math"="true" "unsafe-fp-math"="true" }
./unittests/ADT/ilistTest.cpp:TEST(ilistTest, UnsafeClear) {
./unittests/ADT/ilistTest.cpp: List.clearAndLeakNodesUnsafely();
./unittests/ADT/ilistTest.cpp: List.clearAndLeakNodesUnsafely();
./unittests/ADT/ilistTest.cpp: List.clearAndLeakNodesUnsafely();
./unittests/IR/IRBuilderTest.cpp: FMF.setUnsafeAlgebra();
./unittests/IR/IRBuilderTest.cpp: EXPECT_TRUE(Builder.getFastMathFlags().UnsafeAlgebra);
./utils/bugpoint/RemoteRunSafely.sh:# Program: RemoteRunSafely.sh
./utils/bugpoint/RemoteRunSafely.sh:# RemoteRunSafely.sh <hostname> [-l <login_name>] [-p <port>]
./utils/bugpoint/RemoteRunSafely.sh: echo "./RemoteRunSafely.sh <hostname> [-l <login_name>] [-p <port>] " \
./utils/unittest/googletest/include/gtest/gtest.h: // unsafe mix of types
./utils/unittest/googletest/src/gtest-death-test.cc: msg << "Death tests use fork(), which is unsafe particularly"
./utils/unittest/googletest/src/gtest-death-test.cc:// any potentially unsafe operations like malloc or libc functions.
./utils/unittest/googletest/src/gtest-death-test.cc: // unsafe. Since execve() doesn't search the PATH, the user must
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment