r310057 - Revert r304953 for release 5.0.0

Vitaly Buka via cfe-commits cfe-commits at lists.llvm.org
Fri Aug 4 15:27:44 PDT 2017


Probably not, r310056 fails as well

On Fri, Aug 4, 2017 at 3:19 PM, Vitaly Buka <vitalybuka at google.com> wrote:

> Looks like it's causing
> http://lab.llvm.org:8011/builders/sanitizer-x86_64-
> linux-bootstrap/builds/1969/steps/build%20clang%2Fmsan/logs/stdio
>
> FAILED: lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/MIRPrinter.cpp.o
> /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang++   -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/CodeGen -I/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/CodeGen -Iinclude -I/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/include -nostdinc++ -isystem /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/libcxx_build_msan/include -isystem /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/libcxx_build_msan/include/c++/v1  -lc++abi -Wl,--rpath=/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/libcxx_build_msan/lib -L/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/libcxx_build_msan/lib -fsanitize=memory -w -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Werror=date-time -std=c++11 -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fno-omit-frame-pointer -gline-tables-only -fsanitize=memory -fcolor-diagnostics -ffunction-sections -fdata-sections -O3    -UNDEBUG  -fno-exceptions -fno-rtti -MD -MT lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/MIRPrinter.cpp.o -MF lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/MIRPrinter.cpp.o.d -o lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/MIRPrinter.cpp.o -c /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/CodeGen/MIRPrinter.cpp
> clang-5.0: /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/include/llvm/Support/Casting.h:106: static bool llvm::isa_impl_cl<To, const From*>::doit(const From*) [with To = llvm::ConstantInt; From = llvm::Value]: Assertion `Val && "isa<> used on a null pointer"' failed.
> #0 0x00000000020b5d4a llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x20b5d4a)
> #1 0x00000000020b3abe llvm::sys::RunSignalHandlers() (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x20b3abe)
> #2 0x00000000020b3c32 SignalHandler(int) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x20b3c32)
> #3 0x00007f319d790390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
> #4 0x00007f319c71c428 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x35428)
> #5 0x00007f319c71e02a abort (/lib/x86_64-linux-gnu/libc.so.6+0x3702a)
> #6 0x00007f319c714bd7 (/lib/x86_64-linux-gnu/libc.so.6+0x2dbd7)
> #7 0x00007f319c714c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
> #8 0x000000000084f464 llvm::isa_impl_wrap<llvm::ConstantExpr, llvm::Value const*, llvm::Value const*>::doit(llvm::Value const* const&) [clone .isra.166] [clone .part.167] (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x84f464)
> #9 0x0000000001c35d4c llvm::Value::stripPointerCasts() const (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x1c35d4c)
> #10 0x0000000001e996e1 eliminateDeadStores(llvm::BasicBlock&, llvm::AAResults*, llvm::MemoryDependenceResults*, llvm::DominatorTree*, llvm::TargetLibraryInfo const*) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x1e996e1)
> #11 0x0000000001e9ad2a eliminateDeadStores(llvm::Function&, llvm::AAResults*, llvm::MemoryDependenceResults*, llvm::DominatorTree*, llvm::TargetLibraryInfo const*) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x1e9ad2a)
> #12 0x0000000001bff3a3 llvm::FPPassManager::runOnFunction(llvm::Function&) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x1bff3a3)
> #13 0x0000000001bff46c llvm::FPPassManager::runOnModule(llvm::Module&) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x1bff46c)#14 0x0000000001bfef0d llvm::legacy::PassManagerImpl::run(llvm::Module&) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x1bfef0d)
> #15 0x000000000225c6d1 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout const&, llvm::Module*, clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream> >) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x225c6d1)
> #16 0x00000000029691a9 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x29691a9)
> #17 0x0000000002d40028 clang::ParseAST(clang::Sema&, bool, bool) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x2d40028)
> #18 0x000000000296852f clang::CodeGenAction::ExecuteAction() (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x296852f)
> #19 0x000000000261354e clang::FrontendAction::Execute() (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x261354e)
> #20 0x00000000025e22d6 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x25e22d6)
> #21 0x00000000026a5f62 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0x26a5f62)
> #22 0x0000000000aafe48 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0xaafe48)
> #23 0x0000000000a3e169 main (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0xa3e169)
> #24 0x00007f319c707830 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20830)
> #25 0x0000000000aac2f9 _start (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0+0xaac2f9)
> Stack dump:
> 0.	Program arguments: /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin/clang-5.0 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -disable-free -main-file-name MIRPrinter.cpp -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -momit-leaf-frame-pointer -dwarf-column-info -debug-info-kind=line-tables-only -dwarf-version=4 -debugger-tuning=gdb -ffunction-sections -fdata-sections -coverage-notes-file /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build_msan/lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/MIRPrinter.cpp.gcno -nostdinc++ -resource-dir /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/lib/clang/6.0.0 -dependency-file lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/MIRPrinter.cpp.o.d -sys-header-deps -MT lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/MIRPrinter.cpp.o -isystem /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/libcxx_build_msan/include -isystem /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/libcxx_build_msan/include/c++/v1 -D GTEST_HAS_RTTI=0 -D _DEBUG -D _GNU_SOURCE -D __STDC_CONSTANT_MACROS -D __STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -I lib/CodeGen -I /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/CodeGen -I include -I /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/include -U NDEBUG -internal-isystem /usr/local/include -internal-isystem /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/lib/clang/6.0.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O3 -Werror=date-time -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -pedantic -w -std=c++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build_msan -ferror-limit 19 -fmessage-length 0 -fvisibility-inlines-hidden -fsanitize=memory -fsanitize-blacklist=/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/lib/clang/6.0.0/msan_blacklist.txt -fno-assume-sane-operator-new -fno-rtti -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -o lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/MIRPrinter.cpp.o -x c++ /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/CodeGen/MIRPrinter.cpp
> 1.	<eof> parser at end of file
> 2.	Per-module optimization passes
> 3.	Running pass 'Function Pass Manager' on module '/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/CodeGen/MIRPrinter.cpp'.
> 4.	Running pass 'Dead Store Elimination' on function '@_ZN4llvm4yaml13MappingTraitsINS0_15MachineFunctionEE7mappingERNS0_2IOERS2_'
> clang-5.0: error: unable to execute command: Aborted (core dumped)
> clang-5.0: error: clang frontend command failed due to signal (use -v to see invocation)
> clang version 6.0.0 (trunk 310060)
> Target: x86_64-unknown-linux-gnu
> Thread model: posix
> InstalledDir: /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build0/bin
> clang-5.0: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
> clang-5.0: note: diagnostic msg:
> ********************
>
>
> On Fri, Aug 4, 2017 at 5:37 AM, Stefan Maksimovic via cfe-commits <
> cfe-commits at lists.llvm.org> wrote:
>
>> Author: smaksimovic
>> Date: Fri Aug  4 05:37:34 2017
>> New Revision: 310057
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=310057&view=rev
>> Log:
>> Revert r304953 for release 5.0.0
>>
>> This is causing failures when compiling clang with -O3
>> as one of the structures used by clang is passed by
>> value and uses the fastcc calling convention.
>>
>> Faliures manifest for stage2 mips build.
>>
>> Removed:
>>     cfe/trunk/test/CodeGen/mips-madd4.c
>> Modified:
>>     cfe/trunk/include/clang/Driver/Options.td
>>     cfe/trunk/lib/Basic/Targets/Mips.cpp
>>     cfe/trunk/lib/Basic/Targets/Mips.h
>>     cfe/trunk/lib/Driver/ToolChains/Arch/Mips.cpp
>>     cfe/trunk/test/Preprocessor/init.c
>>
>> Modified: cfe/trunk/include/clang/Driver/Options.td
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/
>> Driver/Options.td?rev=310057&r1=310056&r2=310057&view=diff
>> ============================================================
>> ==================
>> --- cfe/trunk/include/clang/Driver/Options.td (original)
>> +++ cfe/trunk/include/clang/Driver/Options.td Fri Aug  4 05:37:34 2017
>> @@ -2019,10 +2019,6 @@ def mdspr2 : Flag<["-"], "mdspr2">, Grou
>>  def mno_dspr2 : Flag<["-"], "mno-dspr2">, Group<m_Group>;
>>  def msingle_float : Flag<["-"], "msingle-float">, Group<m_Group>;
>>  def mdouble_float : Flag<["-"], "mdouble-float">, Group<m_Group>;
>> -def mmadd4 : Flag<["-"], "mmadd4">, Group<m_Group>,
>> -  HelpText<"Enable the generation of 4-operand madd.s, madd.d and
>> related instructions.">;
>> -def mno_madd4 : Flag<["-"], "mno-madd4">, Group<m_Group>,
>> -  HelpText<"Disable the generation of 4-operand madd.s, madd.d and
>> related instructions.">;
>>  def mmsa : Flag<["-"], "mmsa">, Group<m_Group>,
>>    HelpText<"Enable MSA ASE (MIPS only)">;
>>  def mno_msa : Flag<["-"], "mno-msa">, Group<m_Group>,
>>
>> Modified: cfe/trunk/lib/Basic/Targets/Mips.cpp
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targ
>> ets/Mips.cpp?rev=310057&r1=310056&r2=310057&view=diff
>> ============================================================
>> ==================
>> --- cfe/trunk/lib/Basic/Targets/Mips.cpp (original)
>> +++ cfe/trunk/lib/Basic/Targets/Mips.cpp Fri Aug  4 05:37:34 2017
>> @@ -166,9 +166,6 @@ void MipsTargetInfo::getTargetDefines(co
>>    if (HasMSA)
>>      Builder.defineMacro("__mips_msa", Twine(1));
>>
>> -  if (DisableMadd4)
>> -    Builder.defineMacro("__mips_no_madd4", Twine(1));
>> -
>>    Builder.defineMacro("_MIPS_SZPTR", Twine(getPointerWidth(0)));
>>    Builder.defineMacro("_MIPS_SZINT", Twine(getIntWidth()));
>>    Builder.defineMacro("_MIPS_SZLONG", Twine(getLongWidth()));
>>
>> Modified: cfe/trunk/lib/Basic/Targets/Mips.h
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targ
>> ets/Mips.h?rev=310057&r1=310056&r2=310057&view=diff
>> ============================================================
>> ==================
>> --- cfe/trunk/lib/Basic/Targets/Mips.h (original)
>> +++ cfe/trunk/lib/Basic/Targets/Mips.h Fri Aug  4 05:37:34 2017
>> @@ -52,7 +52,6 @@ class LLVM_LIBRARY_VISIBILITY MipsTarget
>>    enum MipsFloatABI { HardFloat, SoftFloat } FloatABI;
>>    enum DspRevEnum { NoDSP, DSP1, DSP2 } DspRev;
>>    bool HasMSA;
>> -  bool DisableMadd4;
>>
>>  protected:
>>    bool HasFP64;
>> @@ -63,7 +62,7 @@ public:
>>        : TargetInfo(Triple), IsMips16(false), IsMicromips(false),
>>          IsNan2008(false), IsSingleFloat(false), IsNoABICalls(false),
>>          CanUseBSDABICalls(false), FloatABI(HardFloat), DspRev(NoDSP),
>> -        HasMSA(false), DisableMadd4(false), HasFP64(false) {
>> +        HasMSA(false), HasFP64(false) {
>>      TheCXXABI.set(TargetCXXABI::GenericMIPS);
>>
>>      setABI((getTriple().getArch() == llvm::Triple::mips ||
>> @@ -320,8 +319,6 @@ public:
>>          DspRev = std::max(DspRev, DSP2);
>>        else if (Feature == "+msa")
>>          HasMSA = true;
>> -      else if (Feature == "+nomadd4")
>> -        DisableMadd4 = true;
>>        else if (Feature == "+fp64")
>>          HasFP64 = true;
>>        else if (Feature == "-fp64")
>>
>> Modified: cfe/trunk/lib/Driver/ToolChains/Arch/Mips.cpp
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Too
>> lChains/Arch/Mips.cpp?rev=310057&r1=310056&r2=310057&view=diff
>> ============================================================
>> ==================
>> --- cfe/trunk/lib/Driver/ToolChains/Arch/Mips.cpp (original)
>> +++ cfe/trunk/lib/Driver/ToolChains/Arch/Mips.cpp Fri Aug  4 05:37:34
>> 2017
>> @@ -297,8 +297,6 @@ void mips::getMIPSTargetFeatures(const D
>>
>>    AddTargetFeature(Args, Features, options::OPT_mno_odd_spreg,
>>                     options::OPT_modd_spreg, "nooddspreg");
>> -  AddTargetFeature(Args, Features, options::OPT_mno_madd4,
>> options::OPT_mmadd4,
>> -                   "nomadd4");
>>    AddTargetFeature(Args, Features, options::OPT_mlong_calls,
>>                     options::OPT_mno_long_calls, "long-calls");
>>    AddTargetFeature(Args, Features, options::OPT_mmt,
>> options::OPT_mno_mt, "mt");
>>
>> Removed: cfe/trunk/test/CodeGen/mips-madd4.c
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/
>> mips-madd4.c?rev=310056&view=auto
>> ============================================================
>> ==================
>> --- cfe/trunk/test/CodeGen/mips-madd4.c (original)
>> +++ cfe/trunk/test/CodeGen/mips-madd4.c (removed)
>> @@ -1,87 +0,0 @@
>> -// REQUIRES: mips-registered-target
>> -// RUN: %clang --target=mips64-unknown-linux -S -mmadd4    %s -o -|
>> FileCheck %s -check-prefix=MADD4
>> -// RUN: %clang --target=mips64-unknown-linux -S -mno-madd4 %s -o -|
>> FileCheck %s -check-prefix=NOMADD4
>> -// RUN: %clang --target=mips64-unknown-linux -S -mmadd4
>> -fno-honor-nans %s -o -| FileCheck %s -check-prefix=MADD4-NONAN
>> -// RUN: %clang --target=mips64-unknown-linux -S -mno-madd4
>> -fno-honor-nans %s -o -| FileCheck %s -check-prefix=NOMADD4-NONAN
>> -
>> -float madd_s (float f, float g, float h)
>> -{
>> -  return (f * g) + h;
>> -}
>> -// MADD4:   madd.s
>> -// NOMADD4: mul.s
>> -// NOMADD4: add.s
>> -
>> -float msub_s (float f, float g, float h)
>> -{
>> -  return (f * g) - h;
>> -}
>> -// MADD4:   msub.s
>> -// NOMADD4: mul.s
>> -// NOMADD4: sub.s
>> -
>> -double madd_d (double f, double g, double h)
>> -{
>> -  return (f * g) + h;
>> -}
>> -// MADD4:   madd.d
>> -// NOMADD4: mul.d
>> -// NOMADD4: add.d
>> -
>> -double msub_d (double f, double g, double h)
>> -{
>> -  return (f * g) - h;
>> -}
>> -// MADD4:   msub.d
>> -// NOMADD4: mul.d
>> -// NOMADD4: sub.d
>> -
>> -
>> -float nmadd_s (float f, float g, float h)
>> -{
>> -  // FIXME: Zero has been explicitly placed to force generation of a
>> positive
>> -  // zero in IR until pattern used to match this instruction is changed
>> to
>> -  // comply with negative zero as well.
>> -  return 0-((f * g) + h);
>> -}
>> -// MADD4-NONAN:   nmadd.s
>> -// NOMADD4-NONAN: mul.s
>> -// NOMADD4-NONAN: add.s
>> -// NOMADD4-NONAN: sub.s
>> -
>> -float nmsub_s (float f, float g, float h)
>> -{
>> -  // FIXME: Zero has been explicitly placed to force generation of a
>> positive
>> -  // zero in IR until pattern used to match this instruction is changed
>> to
>> -  // comply with negative zero as well.
>> -  return 0-((f * g) - h);
>> -}
>> -// MADD4-NONAN:   nmsub.s
>> -// NOMADD4-NONAN: mul.s
>> -// NOMADD4-NONAN: sub.s
>> -// NOMADD4-NONAN: sub.s
>> -
>> -double nmadd_d (double f, double g, double h)
>> -{
>> -  // FIXME: Zero has been explicitly placed to force generation of a
>> positive
>> -  // zero in IR until pattern used to match this instruction is changed
>> to
>> -  // comply with negative zero as well.
>> -  return 0-((f * g) + h);
>> -}
>> -// MADD4-NONAN:   nmadd.d
>> -// NOMADD4-NONAN: mul.d
>> -// NOMADD4-NONAN: add.d
>> -// NOMADD4-NONAN: sub.d
>> -
>> -double nmsub_d (double f, double g, double h)
>> -{
>> -  // FIXME: Zero has been explicitly placed to force generation of a
>> positive
>> -  // zero in IR until pattern used to match this instruction is changed
>> to
>> -  // comply with negative zero as well.
>> -  return 0-((f * g) - h);
>> -}
>> -// MADD4-NONAN:   nmsub.d
>> -// NOMADD4-NONAN: mul.d
>> -// NOMADD4-NONAN: sub.d
>> -// NOMADD4-NONAN: sub.d
>> -
>>
>> Modified: cfe/trunk/test/Preprocessor/init.c
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Preproces
>> sor/init.c?rev=310057&r1=310056&r2=310057&view=diff
>> ============================================================
>> ==================
>> --- cfe/trunk/test/Preprocessor/init.c (original)
>> +++ cfe/trunk/test/Preprocessor/init.c Fri Aug  4 05:37:34 2017
>> @@ -4840,16 +4840,6 @@
>>  // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-MSA %s
>>  // MIPS-MSA:#define __mips_msa 1
>>  //
>> -// RUN: %clang_cc1 -target-feature +nomadd4 \
>> -// RUN:   -E -dM -triple=mips-none-none < /dev/null \
>> -// RUN:   | FileCheck -match-full-lines -check-prefix MIPS-NOMADD4 %s
>> -// MIPS-NOMADD4:#define __mips_no_madd4 1
>> -//
>> -// RUN: %clang_cc1 \
>> -// RUN:   -E -dM -triple=mips-none-none < /dev/null \
>> -// RUN:   | FileCheck -match-full-lines -check-prefix MIPS-MADD4 %s
>> -// MIPS-MADD4-NOT:#define __mips_no_madd4 1
>> -//
>>  // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
>>  // RUN:   -E -dM -triple=mips-none-none < /dev/null \
>>  // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
>>
>>
>> _______________________________________________
>> cfe-commits mailing list
>> cfe-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170804/10ffea29/attachment-0001.html>


More information about the cfe-commits mailing list