Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Jan 2016 17:48:57 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r294170 - in projects/clang380-import/contrib/llvm: include/llvm include/llvm/CodeGen include/llvm/Target lib/CodeGen/SelectionDAG lib/Target/AMDGPU lib/Target/X86 tools/clang/lib/Basic...
Message-ID:  <201601161748.u0GHmv54049919@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Sat Jan 16 17:48:57 2016
New Revision: 294170
URL: https://svnweb.freebsd.org/changeset/base/294170

Log:
  Update llvm, clang and lldb to release_38 branch r257836.

Modified:
  projects/clang380-import/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h
  projects/clang380-import/contrib/llvm/include/llvm/LinkAllPasses.h
  projects/clang380-import/contrib/llvm/include/llvm/Target/TargetLowering.h
  projects/clang380-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
  projects/clang380-import/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h
  projects/clang380-import/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp
  projects/clang380-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
  projects/clang380-import/contrib/llvm/tools/clang/lib/Basic/Version.cpp
  projects/clang380-import/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunctionUsingABI.h
  projects/clang380-import/contrib/llvm/tools/lldb/source/API/SBProcess.cpp
Directory Properties:
  projects/clang380-import/contrib/llvm/   (props changed)
  projects/clang380-import/contrib/llvm/tools/clang/   (props changed)
  projects/clang380-import/contrib/llvm/tools/lldb/   (props changed)

Modified: projects/clang380-import/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h
==============================================================================
--- projects/clang380-import/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h	Sat Jan 16 17:48:57 2016	(r294170)
@@ -251,6 +251,10 @@ class MachineFrameInfo {
   /// opaque mechanism like inline assembly or Win32 EH.
   bool HasOpaqueSPAdjustment;
 
+  /// True if the function contains operations which will lower down to
+  /// instructions which manipulate the stack pointer.
+  bool HasCopyImplyingStackAdjustment;
+
   /// True if the function contains a call to the llvm.vastart intrinsic.
   bool HasVAStart;
 
@@ -288,6 +292,7 @@ public:
     LocalFrameMaxAlign = 0;
     UseLocalStackAllocationBlock = false;
     HasOpaqueSPAdjustment = false;
+    HasCopyImplyingStackAdjustment = false;
     HasVAStart = false;
     HasMustTailInVarArgFunc = false;
     Save = nullptr;
@@ -493,6 +498,15 @@ public:
   bool hasOpaqueSPAdjustment() const { return HasOpaqueSPAdjustment; }
   void setHasOpaqueSPAdjustment(bool B) { HasOpaqueSPAdjustment = B; }
 
+  /// Returns true if the function contains operations which will lower down to
+  /// instructions which manipulate the stack pointer.
+  bool hasCopyImplyingStackAdjustment() const {
+    return HasCopyImplyingStackAdjustment;
+  }
+  void setHasCopyImplyingStackAdjustment(bool B) {
+    HasCopyImplyingStackAdjustment = B;
+  }
+
   /// Returns true if the function calls the llvm.va_start intrinsic.
   bool hasVAStart() const { return HasVAStart; }
   void setHasVAStart(bool B) { HasVAStart = B; }

Modified: projects/clang380-import/contrib/llvm/include/llvm/LinkAllPasses.h
==============================================================================
--- projects/clang380-import/contrib/llvm/include/llvm/LinkAllPasses.h	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/include/llvm/LinkAllPasses.h	Sat Jan 16 17:48:57 2016	(r294170)
@@ -160,9 +160,11 @@ namespace {
       (void) llvm::createPostOrderFunctionAttrsPass();
       (void) llvm::createReversePostOrderFunctionAttrsPass();
       (void) llvm::createMergeFunctionsPass();
-      (void) llvm::createPrintModulePass(*(llvm::raw_ostream*)nullptr);
-      (void) llvm::createPrintFunctionPass(*(llvm::raw_ostream*)nullptr);
-      (void) llvm::createPrintBasicBlockPass(*(llvm::raw_ostream*)nullptr);
+      std::string buf;
+      llvm::raw_string_ostream os(buf);
+      (void) llvm::createPrintModulePass(os);
+      (void) llvm::createPrintFunctionPass(os);
+      (void) llvm::createPrintBasicBlockPass(os);
       (void) llvm::createModuleDebugInfoPrinterPass();
       (void) llvm::createPartialInliningPass();
       (void) llvm::createLintPass();
@@ -186,10 +188,10 @@ namespace {
 
       (void)new llvm::IntervalPartition();
       (void)new llvm::ScalarEvolutionWrapperPass();
-      ((llvm::Function*)1)->viewCFGOnly();
+      llvm::Function::Create(nullptr, llvm::GlobalValue::ExternalLinkage)->viewCFGOnly();
       llvm::RGPassManager RGM;
-      ((llvm::RegionPass*)1)->runOnRegion((llvm::Region*)nullptr, RGM);
-      llvm::AliasSetTracker X(*(llvm::AliasAnalysis*)nullptr);
+      llvm::AliasAnalysis AA;
+      llvm::AliasSetTracker X(AA);
       X.add(nullptr, 0, llvm::AAMDNodes()); // for -print-alias-sets
       (void) llvm::AreStatisticsEnabled();
       (void) llvm::sys::RunningOnValgrind();

Modified: projects/clang380-import/contrib/llvm/include/llvm/Target/TargetLowering.h
==============================================================================
--- projects/clang380-import/contrib/llvm/include/llvm/Target/TargetLowering.h	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/include/llvm/Target/TargetLowering.h	Sat Jan 16 17:48:57 2016	(r294170)
@@ -2270,7 +2270,7 @@ public:
   }
 
   /// Return true if the MachineFunction contains a COPY which would imply
-  /// HasOpaqueSPAdjustment.
+  /// HasCopyImplyingStackAdjustment.
   virtual bool hasCopyImplyingStackAdjustment(MachineFunction *MF) const {
     return false;
   }

Modified: projects/clang380-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
==============================================================================
--- projects/clang380-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp	Sat Jan 16 17:48:57 2016	(r294170)
@@ -634,7 +634,7 @@ bool SelectionDAGISel::runOnMachineFunct
   }
 
   if (TLI->hasCopyImplyingStackAdjustment(MF))
-    MFI->setHasOpaqueSPAdjustment(true);
+    MFI->setHasCopyImplyingStackAdjustment(true);
 
   // Freeze the set of reserved registers now that MachineFrameInfo has been
   // set up. All the information required by getReservedRegs() should be

Modified: projects/clang380-import/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h
==============================================================================
--- projects/clang380-import/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h	Sat Jan 16 17:48:57 2016	(r294170)
@@ -20,7 +20,7 @@ class AMDGPUInstrPrinter;
 class AMDGPUSubtarget;
 class AMDGPUTargetMachine;
 class FunctionPass;
-class MachineSchedContext;
+struct MachineSchedContext;
 class MCAsmInfo;
 class raw_ostream;
 class ScheduleDAGInstrs;

Modified: projects/clang380-import/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp
==============================================================================
--- projects/clang380-import/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp	Sat Jan 16 17:48:57 2016	(r294170)
@@ -91,7 +91,8 @@ bool X86FrameLowering::hasFP(const Machi
           MFI->isFrameAddressTaken() || MFI->hasOpaqueSPAdjustment() ||
           MF.getInfo<X86MachineFunctionInfo>()->getForceFramePointer() ||
           MMI.callsUnwindInit() || MMI.hasEHFunclets() || MMI.callsEHReturn() ||
-          MFI->hasStackMap() || MFI->hasPatchPoint());
+          MFI->hasStackMap() || MFI->hasPatchPoint() ||
+          MFI->hasCopyImplyingStackAdjustment());
 }
 
 static unsigned getSUBriOpcode(unsigned IsLP64, int64_t Imm) {
@@ -943,11 +944,11 @@ void X86FrameLowering::emitPrologue(Mach
   // push and pop from the stack.
   if (Is64Bit && !Fn->hasFnAttribute(Attribute::NoRedZone) &&
       !TRI->needsStackRealignment(MF) &&
-      !MFI->hasVarSizedObjects() &&    // No dynamic alloca.
-      !MFI->adjustsStack() &&          // No calls.
-      !IsWin64CC &&                    // Win64 has no Red Zone
-      !MFI->hasOpaqueSPAdjustment() && // Don't push and pop.
-      !MF.shouldSplitStack()) {        // Regular stack
+      !MFI->hasVarSizedObjects() &&             // No dynamic alloca.
+      !MFI->adjustsStack() &&                   // No calls.
+      !IsWin64CC &&                             // Win64 has no Red Zone
+      !MFI->hasCopyImplyingStackAdjustment() && // Don't push and pop.
+      !MF.shouldSplitStack()) {                 // Regular stack
     uint64_t MinSize = X86FI->getCalleeSavedFrameSize();
     if (HasFP) MinSize += SlotSize;
     StackSize = std::max(MinSize, StackSize > 128 ? StackSize - 128 : 0);

Modified: projects/clang380-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
==============================================================================
--- projects/clang380-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp	Sat Jan 16 17:48:57 2016	(r294170)
@@ -17458,7 +17458,7 @@ static SDValue LowerINTRINSIC_W_CHAIN(SD
       // We need a frame pointer because this will get lowered to a PUSH/POP
       // sequence.
       MachineFrameInfo *MFI = DAG.getMachineFunction().getFrameInfo();
-      MFI->setHasOpaqueSPAdjustment(true);
+      MFI->setHasCopyImplyingStackAdjustment(true);
       // Don't do anything here, we will expand these intrinsics out later
       // during ExpandISelPseudos in EmitInstrWithCustomInserter.
       return SDValue();

Modified: projects/clang380-import/contrib/llvm/tools/clang/lib/Basic/Version.cpp
==============================================================================
--- projects/clang380-import/contrib/llvm/tools/clang/lib/Basic/Version.cpp	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/tools/clang/lib/Basic/Version.cpp	Sat Jan 16 17:48:57 2016	(r294170)
@@ -36,7 +36,7 @@ std::string getClangRepositoryPath() {
 
   // If the SVN_REPOSITORY is empty, try to use the SVN keyword. This helps us
   // pick up a tag in an SVN export, for example.
-  StringRef SVNRepository("$URL: https://llvm.org/svn/llvm-project/cfe/trunk/lib/Basic/Version.cpp $");
+  StringRef SVNRepository("$URL: https://llvm.org/svn/llvm-project/cfe/branches/release_38/lib/Basic/Version.cpp $");
   if (URL.empty()) {
     URL = SVNRepository.slice(SVNRepository.find(':'),
                               SVNRepository.find("/lib/Basic"));

Modified: projects/clang380-import/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunctionUsingABI.h
==============================================================================
--- projects/clang380-import/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunctionUsingABI.h	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunctionUsingABI.h	Sat Jan 16 17:48:57 2016	(r294170)
@@ -20,7 +20,7 @@
 #include "lldb/Target/ThreadPlanCallFunction.h"
 
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/IR/Type.h"
+#include "llvm/IR/DerivedTypes.h"
 
 namespace lldb_private {
 

Modified: projects/clang380-import/contrib/llvm/tools/lldb/source/API/SBProcess.cpp
==============================================================================
--- projects/clang380-import/contrib/llvm/tools/lldb/source/API/SBProcess.cpp	Sat Jan 16 17:33:09 2016	(r294169)
+++ projects/clang380-import/contrib/llvm/tools/lldb/source/API/SBProcess.cpp	Sat Jan 16 17:48:57 2016	(r294170)
@@ -1000,7 +1000,8 @@ SBProcess::GetRestartedFromEvent (const 
     bool ret_val = Process::ProcessEventData::GetRestartedFromEvent (event.get());
 
     if (log)
-        log->Printf ("SBProcess::%s (event.sp=%p) => %d", __FUNCTION__, event.get(), ret_val);
+        log->Printf ("SBProcess::%s (event.sp=%p) => %d", __FUNCTION__,
+                     static_cast<void*>(event.get()), ret_val);
 
     return ret_val;
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201601161748.u0GHmv54049919>