[llvm-branch-commits] [lldb] r245947 - Merging r245927:

2015-08-25 Thread Hans Wennborg via llvm-branch-commits
Author: hans
Date: Tue Aug 25 11:18:32 2015
New Revision: 245947

URL: http://llvm.org/viewvc/llvm-project?rev=245947&view=rev
Log:
Merging r245927:

r245927 | slthakur | 2015-08-25 02:52:59 -0700 (Tue, 25 Aug 2015) | 9 lines

Fix build on mips

Setting and getting register values as bytes instead of depending on the 128 
bit integer support in register value.
This patch will fix the build failure in the release branch.

Reviewers: tberghammer, clayborg, hans
Subscribers: bhushan, nitesh.jain, jaydeep, lldb-commits
Differential: http://reviews.llvm.org/D12275



Modified:
lldb/branches/release_37/   (props changed)

lldb/branches/release_37/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.cpp

Propchange: lldb/branches/release_37/
--
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Aug 25 11:18:32 2015
@@ -1,3 +1,3 @@
 /lldb/branches/apple/python-GIL:156467-162159
 /lldb/branches/iohandler:198360-200250
-/lldb/trunk:242306,242381,242525,242529,243091,243618,244006,244864-244866,245217
+/lldb/trunk:242306,242381,242525,242529,243091,243618,244006,244864-244866,245217,245927

Modified: 
lldb/branches/release_37/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/branches/release_37/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.cpp?rev=245947&r1=245946&r2=245947&view=diff
==
--- 
lldb/branches/release_37/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.cpp
 (original)
+++ 
lldb/branches/release_37/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.cpp
 Tue Aug 25 11:18:32 2015
@@ -584,7 +584,6 @@ NativeRegisterContextLinux_mips64::ReadR
 if (IsMSA(reg) || IsFPR(reg))
 {
 uint8_t *src;
-type128 int128;
 
 error = ReadCP1();
 
@@ -604,9 +603,6 @@ NativeRegisterContextLinux_mips64::ReadR
 assert (reg_info->byte_offset < sizeof(UserArea));
 src = (uint8_t *)&m_msa + reg_info->byte_offset - (sizeof(m_gpr) + 
sizeof(m_fpr));
 }
-int128.x[0] = *(uint64_t *)src;
-int128.x[1] = *(uint64_t *)(src + 8);
-llvm::APInt rhs = llvm::APInt(128, 2, int128.x);
 switch (reg_info->byte_size)
 {
 case 4:
@@ -616,7 +612,7 @@ NativeRegisterContextLinux_mips64::ReadR
 reg_value.SetUInt64(*(uint64_t *)src);
 break;
 case 16:
-reg_value.SetUInt128(rhs);
+reg_value.SetBytes((const void *)src, 16, GetByteOrder());
 break;
 default:
 assert(false && "Unhandled data size.");
@@ -660,7 +656,7 @@ NativeRegisterContextLinux_mips64::Write
 if (IsFPR(reg_index) || IsMSA(reg_index))
 {
 uint8_t *dst;
-const uint64_t *src;
+uint64_t *src;
 
 // Initialise the FP and MSA buffers by reading all co-processor 1 
registers
 ReadCP1();
@@ -675,8 +671,6 @@ NativeRegisterContextLinux_mips64::Write
 assert (reg_info->byte_offset < sizeof(UserArea));
 dst = (uint8_t *)&m_msa + reg_info->byte_offset - (sizeof(m_gpr) + 
sizeof(m_fpr));
 }
-llvm::APInt lhs;
-llvm::APInt fail_value = llvm::APInt::getMaxValue(128);
 switch (reg_info->byte_size)
 {
 case 4:
@@ -686,8 +680,7 @@ NativeRegisterContextLinux_mips64::Write
 *(uint64_t *)dst = reg_value.GetAsUInt64();
 break;
 case 16:
-lhs = reg_value.GetAsUInt128(fail_value);
-src = lhs.getRawData();
+src = (uint64_t *)reg_value.GetBytes();
 *(uint64_t *)dst = *src;
 *(uint64_t *)(dst + 8) = *(src + 1);
 break;


___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm-branch] r245948 - Deprecate the DataLayout on the TargetMachine, and backport the 3.8 API to ease transition

2015-08-25 Thread Hans Wennborg via llvm-branch-commits
Author: hans
Date: Tue Aug 25 11:25:46 2015
New Revision: 245948

URL: http://llvm.org/viewvc/llvm-project?rev=245948&view=rev
Log:
Deprecate the DataLayout on the TargetMachine, and backport the 3.8 API to ease 
transition

By Mehdi Amini.

Modified:
llvm/branches/release_37/docs/ReleaseNotes.rst
llvm/branches/release_37/include/llvm-c/TargetMachine.h
llvm/branches/release_37/include/llvm/Target/TargetMachine.h

Modified: llvm/branches/release_37/docs/ReleaseNotes.rst
URL: 
http://llvm.org/viewvc/llvm-project/llvm/branches/release_37/docs/ReleaseNotes.rst?rev=245948&r1=245947&r2=245948&view=diff
==
--- llvm/branches/release_37/docs/ReleaseNotes.rst (original)
+++ llvm/branches/release_37/docs/ReleaseNotes.rst Tue Aug 25 11:25:46 2015
@@ -53,6 +53,14 @@ Non-comprehensive list of changes in thi
   a pointer to make it explicit. The Module owns the datalayout and it has to
   match the one attached to the TargetMachine for generating code.
 
+  In 3.6, a pass was inserted in the pipeline to make the DataLayout 
accessible:
+MyPassManager->add(new DataLayoutPass(MyTargetMachine->getDataLayout()));
+  In 3.7, you don't need a pass, you set the DataLayout on the Module:
+MyModule->setDataLayout(MyTargetMachine->createDataLayout());
+
+  The LLVM C API `LLVMGetTargetMachineData` is deprecated to reflect the fact
+  that it won't be available anymore from TargetMachine in 3.8.
+
 * Comdats are now ortogonal to the linkage. LLVM will not create
   comdats for weak linkage globals and the frontends are responsible
   for explicitly adding them.

Modified: llvm/branches/release_37/include/llvm-c/TargetMachine.h
URL: 
http://llvm.org/viewvc/llvm-project/llvm/branches/release_37/include/llvm-c/TargetMachine.h?rev=245948&r1=245947&r2=245948&view=diff
==
--- llvm/branches/release_37/include/llvm-c/TargetMachine.h (original)
+++ llvm/branches/release_37/include/llvm-c/TargetMachine.h Tue Aug 25 11:25:46 
2015
@@ -115,7 +115,7 @@ char *LLVMGetTargetMachineCPU(LLVMTarget
   LLVMDisposeMessage. */
 char *LLVMGetTargetMachineFeatureString(LLVMTargetMachineRef T);
 
-/** Returns the llvm::DataLayout used for this llvm:TargetMachine. */
+/** Deprecated: use LLVMGetDataLayout(LLVMModuleRef M) instead. */
 LLVMTargetDataRef LLVMGetTargetMachineData(LLVMTargetMachineRef T);
 
 /** Set the target machine's ASM verbosity. */

Modified: llvm/branches/release_37/include/llvm/Target/TargetMachine.h
URL: 
http://llvm.org/viewvc/llvm-project/llvm/branches/release_37/include/llvm/Target/TargetMachine.h?rev=245948&r1=245947&r2=245948&view=diff
==
--- llvm/branches/release_37/include/llvm/Target/TargetMachine.h (original)
+++ llvm/branches/release_37/include/llvm/Target/TargetMachine.h Tue Aug 25 
11:25:46 2015
@@ -125,10 +125,15 @@ public:
 return *static_cast(getSubtargetImpl(F));
   }
 
+  /// Deprecated in 3.7, will be removed in 3.8. Use createDataLayout() 
instead.
+  ///
   /// This method returns a pointer to the DataLayout for the target. It should
   /// be unchanging for every subtarget.
   const DataLayout *getDataLayout() const { return &DL; }
 
+  /// Create a DataLayout.
+  const DataLayout createDataLayout() const { return DL; }
+
   /// \brief Reset the target options based on the function's attributes.
   // FIXME: Remove TargetOptions that affect per-function code generation
   // from TargetMachine.


___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm-branch] r245968 - ReleaseNotes: remove in-progress warning

2015-08-25 Thread Hans Wennborg via llvm-branch-commits
Author: hans
Date: Tue Aug 25 14:51:36 2015
New Revision: 245968

URL: http://llvm.org/viewvc/llvm-project?rev=245968&view=rev
Log:
ReleaseNotes: remove in-progress warning

Modified:
llvm/branches/release_37/docs/ReleaseNotes.rst

Modified: llvm/branches/release_37/docs/ReleaseNotes.rst
URL: 
http://llvm.org/viewvc/llvm-project/llvm/branches/release_37/docs/ReleaseNotes.rst?rev=245968&r1=245967&r2=245968&view=diff
==
--- llvm/branches/release_37/docs/ReleaseNotes.rst (original)
+++ llvm/branches/release_37/docs/ReleaseNotes.rst Tue Aug 25 14:51:36 2015
@@ -5,12 +5,6 @@ LLVM 3.7 Release Notes
 .. contents::
 :local:
 
-.. warning::
-   These are in-progress notes for the upcoming LLVM 3.7 release.  You may
-   prefer the `LLVM 3.6 Release Notes `_.
-
-
 Introduction
 
 


___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [cfe-branch] r245969 - ReleaseNotes: remove in-progress warning

2015-08-25 Thread Hans Wennborg via llvm-branch-commits
Author: hans
Date: Tue Aug 25 14:52:35 2015
New Revision: 245969

URL: http://llvm.org/viewvc/llvm-project?rev=245969&view=rev
Log:
ReleaseNotes: remove in-progress warning

Modified:
cfe/branches/release_37/docs/ReleaseNotes.rst

Modified: cfe/branches/release_37/docs/ReleaseNotes.rst
URL: 
http://llvm.org/viewvc/llvm-project/cfe/branches/release_37/docs/ReleaseNotes.rst?rev=245969&r1=245968&r2=245969&view=diff
==
--- cfe/branches/release_37/docs/ReleaseNotes.rst (original)
+++ cfe/branches/release_37/docs/ReleaseNotes.rst Tue Aug 25 14:52:35 2015
@@ -8,11 +8,6 @@ Clang 3.7 (In-Progress) Release Notes
 
 Written by the `LLVM Team `_
 
-.. warning::
-
-   These are in-progress notes for the upcoming Clang 3.7 release. You may
-   prefer the `Clang 3.6 Release Notes
-   `_.
 
 Introduction
 


___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm-branch] r245972 - ReleaseNotes: some more touch-ups

2015-08-25 Thread Hans Wennborg via llvm-branch-commits
Author: hans
Date: Tue Aug 25 15:13:58 2015
New Revision: 245972

URL: http://llvm.org/viewvc/llvm-project?rev=245972&view=rev
Log:
ReleaseNotes: some more touch-ups

Modified:
llvm/branches/release_37/docs/ReleaseNotes.rst

Modified: llvm/branches/release_37/docs/ReleaseNotes.rst
URL: 
http://llvm.org/viewvc/llvm-project/llvm/branches/release_37/docs/ReleaseNotes.rst?rev=245972&r1=245971&r2=245972&view=diff
==
--- llvm/branches/release_37/docs/ReleaseNotes.rst (original)
+++ llvm/branches/release_37/docs/ReleaseNotes.rst Tue Aug 25 15:13:58 2015
@@ -42,18 +42,18 @@ Non-comprehensive list of changes in thi
   collection of tips for frontend authors on how to generate IR which LLVM is
   able to effectively optimize.
 
-* The DataLayout is no longer optional. All the IR level optimizations expects
+* The ``DataLayout`` is no longer optional. All the IR level optimizations 
expects
   it to be present and the API has been changed to use a reference instead of
   a pointer to make it explicit. The Module owns the datalayout and it has to
   match the one attached to the TargetMachine for generating code.
 
-  In 3.6, a pass was inserted in the pipeline to make the DataLayout 
accessible:
-MyPassManager->add(new DataLayoutPass(MyTargetMachine->getDataLayout()));
-  In 3.7, you don't need a pass, you set the DataLayout on the Module:
-MyModule->setDataLayout(MyTargetMachine->createDataLayout());
+  In 3.6, a pass was inserted in the pipeline to make the ``DataLayout`` 
accessible:
+``MyPassManager->add(new 
DataLayoutPass(MyTargetMachine->getDataLayout()));``
+  In 3.7, you don't need a pass, you set the ``DataLayout`` on the ``Module``:
+``MyModule->setDataLayout(MyTargetMachine->createDataLayout());``
 
-  The LLVM C API `LLVMGetTargetMachineData` is deprecated to reflect the fact
-  that it won't be available anymore from TargetMachine in 3.8.
+  The LLVM C API ``LLVMGetTargetMachineData`` is deprecated to reflect the fact
+  that it won't be available anymore from ``TargetMachine`` in 3.8.
 
 * Comdats are now ortogonal to the linkage. LLVM will not create
   comdats for weak linkage globals and the frontends are responsible
@@ -78,7 +78,8 @@ Non-comprehensive list of changes in thi
   are turned off, to save compile time.
 
 * The debug info IR class hierarchy now inherits from ``Metadata`` and has its
-  own bitcode records and assembly syntax (documented in LangRef).  The debug
+  own bitcode records and assembly syntax
+  (`documented in LangRef `_).  The 
debug
   info verifier has been merged with the main verifier.
 
 * LLVM IR and APIs are in a period of transition to aid in the removal of
@@ -86,26 +87,9 @@ Non-comprehensive list of changes in thi
   if you will). Some APIs and IR constructs have been modified to take
   explicit types that are currently checked to match the target type of their
   pre-existing pointer type operands. Further changes are still needed, but the
-  more you can avoid using PointerType::getPointeeType, the easier the
+  more you can avoid using ``PointerType::getPointeeType``, the easier the
   migration will be.
 
-* ... next change ...
-
-.. NOTE
-   If you would like to document a larger change, then you can add a
-   subsection about it right here. You can copy the following boilerplate
-   and un-indent it (the indentation causes it to be inside this comment).
-
-   Special New Feature
-   ---
-
-   Makes programs 10x faster by doing Special New Thing.
-
-Changes to the ARM Backend
---
-
- During this release ...
-
 
 Changes to the MIPS Target
 --
@@ -114,8 +98,8 @@ During this release the MIPS target has:
 
 * Added support for MIPS32R3, MIPS32R5, MIPS32R3, MIPS32R5, and microMIPS32.
 
-* Added support for dynamic stack realignment. This of particular importance to
-  MSA on 32-bit subtargets since vectors always exceed the stack alignment on
+* Added support for dynamic stack realignment. This is of particular importance
+  to MSA on 32-bit subtargets since vectors always exceed the stack alignment 
on
   the O32 ABI.
 
 * Added support for compiler-rt including:
@@ -244,12 +228,6 @@ Changes to the SystemZ Target
 * Support for the z13 processor and its vector facility.
 
 
-Changes to the OCaml bindings
--
-
- During this release ...
-
-
 Changes to the JIT APIs
 ---
 
@@ -258,7 +236,7 @@ Changes to the JIT APIs
   ORC is a new JIT API inspired by MCJIT but designed to be more testable, and
   easier to extend with new features. A key new feature already in tree is 
lazy,
   function-at-a-time compilation for X86. Also included is a reimplementation 
of
-  MCJIT’s API and behavior (OrcMCJITReplacement). MCJIT itself remains in 
tree,
+  MCJIT's API and behavior (OrcMCJITReplacement). MCJIT itself remains in tree,
   and continues to be the default JIT Exe

[llvm-branch-commits] [cfe-branch] r245973 - ReleaseNotes: some touch-ups

2015-08-25 Thread Hans Wennborg via llvm-branch-commits
Author: hans
Date: Tue Aug 25 15:30:21 2015
New Revision: 245973

URL: http://llvm.org/viewvc/llvm-project?rev=245973&view=rev
Log:
ReleaseNotes: some touch-ups

Modified:
cfe/branches/release_37/docs/ReleaseNotes.rst

Modified: cfe/branches/release_37/docs/ReleaseNotes.rst
URL: 
http://llvm.org/viewvc/llvm-project/cfe/branches/release_37/docs/ReleaseNotes.rst?rev=245973&r1=245972&r2=245973&view=diff
==
--- cfe/branches/release_37/docs/ReleaseNotes.rst (original)
+++ cfe/branches/release_37/docs/ReleaseNotes.rst Tue Aug 25 15:30:21 2015
@@ -1,6 +1,6 @@
-=
-Clang 3.7 (In-Progress) Release Notes
-=
+===
+Clang 3.7 Release Notes
+===
 
 .. contents::
:local:
@@ -26,11 +26,6 @@ the latest release, please check out the
 Site `_ or the `LLVM Web
 Site `_.
 
-Note that if you are reading this file from a Subversion checkout or the
-main Clang web page, this document applies to the *next* release, not
-the current one. To see the release notes for a specific release, please
-see the `releases page `_.
-
 What's New in Clang 3.7?
 
 
@@ -56,7 +51,7 @@ Major New Features
 
 
 Improvements to Clang's diagnostics
-^^^
+---
 
 Clang's diagnostics are constantly being improved to catch more issues,
 explain them more clearly, and provide more accurate source information
@@ -94,39 +89,6 @@ The sized deallocation feature of C++14
 isn't yet widely deployed, so the user must supply an extra flag to get the
 extra functionality.
 
-The option 
-
-
-New Pragmas in Clang

-
-Clang now supports the ...
-
-Windows Support

-
-Clang's support for building native Windows programs ...
-
-
-C Language Changes in Clang

-
-...
-
-C11 Feature Support
-^^^
-
-...
-
-C++ Language Changes in Clang
--
-
-- ...
-
-C++11 Feature Support
-^
-
-...
 
 Objective-C Language Changes in Clang
 -
@@ -134,13 +96,6 @@ Objective-C Language Changes in Clang
 - ``objc_boxable`` attribute was added. Structs and unions marked with this 
attribute can be
   used with boxed expressions (``@(...)``) to create ``NSValue``.
 
-...
-
-OpenCL C Language Changes in Clang
---
-
-...
-
 Profile Guided Optimization
 ---
 
@@ -158,20 +113,20 @@ profile analysis.
 OpenMP Support
 --
 OpenMP 3.1 is fully supported, but disabled by default. To enable it, please 
use
-``-fopenmp=libomp`` command line option. Your feedback (positive or negative) 
on
+the ``-fopenmp=libomp`` command line option. Your feedback (positive or 
negative) on
 using OpenMP-enabled clang would be much appreciated; please share it either on
 `cfe-dev `_ or `openmp-dev
 `_ mailing lists.
 
-In addition to OpenMP 3.1, several important elements of 4.0 version of the
+In addition to OpenMP 3.1, several important elements of the 4.0 version of the
 standard are supported as well:
+
 - ``omp simd``, ``omp for simd`` and ``omp parallel for simd`` pragmas
 - atomic constructs
 - ``proc_bind`` clause of ``omp parallel`` pragma
 - ``depend`` clause of ``omp task`` pragma (except for array sections)
 - ``omp cancel`` and ``omp cancellation point`` pragmas
 - ``omp taskgroup`` pragma
-...
 
 Internal API Changes
 
@@ -180,19 +135,14 @@ These are major API changes that have ha
 Clang. If upgrading an external codebase that uses Clang as a library,
 this section should help get you past the largest hurdles of upgrading.
 
--  Some of the `PPCallbacks` interface now deals in `MacroDefinition`
-   objects instead of `MacroDirective` objects. This allows preserving
+-  Some of the ``PPCallbacks`` interface now deals in ``MacroDefinition``
+   objects instead of ``MacroDirective`` objects. This allows preserving
full information on macros imported from modules.
 
--  `clang-c/Index.h` no longer `#include`\s `clang-c/Documentation.h`.
-   You now need to explicitly `#include "clang-c/Documentation.h"` if
+-  ``clang-c/Index.h`` no longer ``#include``\s ``clang-c/Documentation.h``.
+   You now need to explicitly ``#include "clang-c/Documentation.h"`` if
you use the libclang documentation API.
 
-libclang
-
-
-...
-
 Static Analyzer
 ---
 
@@ -248,71 +198,51 @@ clang-tidy
 --
 Added new checks:
 
-  * google-global-names-in-headers: flag global namespace pollution in header
-files.
-
-  * misc-assert-side-effect: detects `assert()` conditions with side effects
-which can cause