Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge release/9.x branch into rustc/9.0-2019-07-12 #23

Merged
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jul 16, 2019

  1. [RISCV] Make RISCVELFObjectWriter::getRelocType check IsPCRel

    Previously, this function didn't check the IsPCRel argument. But doing so is a
    useful check for errors, and also seemingly necessary for FK_Data_4 (which we
    produce a R_RISCV_32_PCREL relocation for if IsPCRel).
    
    Other than R_RISCV_32_PCREL, this should be NFC. Future exception handling
    related patches will include tests that capture this behaviour.
    
    llvm-svn: 366172
    asb committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    4ac0b9b View commit details
    Browse the repository at this point in the history
  2. [RISCV][NFC] Fix HasStedExtA -> HasStdExtA typo in comment

    Differential Revision: https://reviews.llvm.org/D64011
    Patch by James Clarke.
    
    llvm-svn: 366173
    asb committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    a3c7b27 View commit details
    Browse the repository at this point in the history
  3. [RISCV][NFC] Split PseudoCALL pattern out from instruction

    Since PseudoCALL defines AsmString, it can be generated from assembly,
    and so code-gen patterns should be defined separately to be consistent
    with the style of the RISCV backend. Other pseudo-instructions exist
    that have code-gen patterns defined directly, but these instructions are
    purely for code-gen and cannot be written in assembly.
    
    Differential Revision: https://reviews.llvm.org/D64012
    Patch by James Clarke.
    
    llvm-svn: 366174
    asb committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    ef8577e View commit details
    Browse the repository at this point in the history
  4. [RISCV] Fix a potential issue in shouldInsertFixupForCodeAlign()

    The bool result of shouldInsertExtraNopBytesForCodeAlign() is not checked but
    the returned nop count is unconditionally read even though it could be
    uninitialized.
    
    Differential Revision: https://reviews.llvm.org/D63285
    Patch by Edward Jones.
    
    llvm-svn: 366175
    asb committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    e9ad0cf View commit details
    Browse the repository at this point in the history
  5. [RISCV] Avoid overflow when determining number of nops for code align

    RISCVAsmBackend::shouldInsertExtraNopBytesForCodeAlign() assumed that the
    align specified would be greater than or equal to the minimum nop length, but
    that is not always the case - for example if a user specifies ".align 0" in
    assembly.
    
    Differential Revision: https://reviews.llvm.org/D63274
    Patch by Edward Jones.
    
    llvm-svn: 366176
    asb committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    bb479ca View commit details
    Browse the repository at this point in the history
  6. Fix parameter name comments using clang-tidy. NFC.

    This patch applies clang-tidy's bugprone-argument-comment tool
    to LLVM, clang and lld source trees. Here is how I created this
    patch:
    
    $ git clone https://github.com/llvm/llvm-project.git
    $ cd llvm-project
    $ mkdir build
    $ cd build
    $ cmake -GNinja -DCMAKE_BUILD_TYPE=Debug \
        -DLLVM_ENABLE_PROJECTS='clang;lld;clang-tools-extra' \
        -DCMAKE_EXPORT_COMPILE_COMMANDS=On -DLLVM_ENABLE_LLD=On \
        -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ ../llvm
    $ ninja
    $ parallel clang-tidy -checks='-*,bugprone-argument-comment' \
        -config='{CheckOptions: [{key: StrictMode, value: 1}]}' -fix \
        ::: ../llvm/lib/**/*.{cpp,h} ../clang/lib/**/*.{cpp,h} ../lld/**/*.{cpp,h}
    
    llvm-svn: 366177
    rui314 committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    49a3ad2 View commit details
    Browse the repository at this point in the history
  7. [RISCV] Match GNU tools canonical JALR and add aliases

    The canonical GNU form of JALR resembles a load/store instruction rather
    than placing the immediate offset as a separate argument, so match this
    behaviour. Also add parser-only aliases for the three-operand form, and
    add other shorter aliases also emitted by GNU tools.
    
    Differential Revision: https://reviews.llvm.org/D55277
    Patch by James Clarke.
    
    llvm-svn: 366179
    asb committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    1ffceaa View commit details
    Browse the repository at this point in the history
  8. [ELF] Fix variable names in comments after VariableName -> variableNa…

    …me change
    
    Also fix some typos.
    
    llvm-svn: 366181
    MaskRay committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    47cfe8f View commit details
    Browse the repository at this point in the history
  9. [X86] In combineStore, don't convert v2f32 load/store pairs to f64 lo…

    …ads/stores.
    
    Type legalization can take care of this. This gives DAG combine
    a little more time with the original types.
    
    llvm-svn: 366182
    topperc committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    c0b2ed6 View commit details
    Browse the repository at this point in the history
  10. [NFC][test] Fix for riscv tests.

    Following tests need updating for: https://reviews.llvm.org/D55277
    
    llvm-svn: 366183
    plotfi committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    3e10905 View commit details
    Browse the repository at this point in the history
  11. Finish "Adapt -fsanitize=function to SANITIZER_NON_UNIQUE_TYPEINFO"

    i.e., recent 5745ecc:
    
    * Bump the function_type_mismatch handler version, as its signature has changed.
    
    * The function_type_mismatch handler can return successfully now, so
      SanitizerKind::Function must be AlwaysRecoverable (like for
      SanitizerKind::Vptr).
    
    * But the minimal runtime would still unconditionally treat a call to the
      function_type_mismatch handler as failure, so disallow -fsanitize=function in
      combination with -fsanitize-minimal-runtime (like it was already done for
      -fsanitize=vptr).
    
    * Add tests.
    
    Differential Revision: https://reviews.llvm.org/D61479
    
    llvm-svn: 366186
    stbergmann committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    e215996 View commit details
    Browse the repository at this point in the history
  12. [lldb] Handle EOF from lldb-vscode

    Sometimes (when running lldb-vscode under strace) I get:
    
    read(0, "", 16)                         = 0
    read(0, "", 16)                         = 0
    read(0, "", 16)                         = 0
    ...
    
    With this patch testcases finish properly even with strace:
    
    read(0, "", 16)                         = 0
    futex(0x1346508, FUTEX_WAKE_PRIVATE, 2147483647) = 0
    stat("", 0x7ffe8f2634c8)                = -1 ENOENT (No such file or directory)
    --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_KILLED, si_pid=9124, si_uid=1001, si_status=SIGINT, si_utime=1, si_stime=0} ---
    close(4)                                = 0
    exit_group(0)                           = ?
    +++ exited with 0 +++
    
    Differential Revision: https://reviews.llvm.org/D64698
    
    llvm-svn: 366187
    jankratochvil committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    d0ac188 View commit details
    Browse the repository at this point in the history
  13. [DWARF] Simplify DWARFAttribute. NFC.

    The first argument in the constructor was ignored, and the remaining
    arguments were always passed as their defaults.
    
    Differential Revision: https://reviews.llvm.org/D64407
    
    llvm-svn: 366188
    igorkudrin committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    860f7ec View commit details
    Browse the repository at this point in the history
  14. [DWARF] Fix an incorrect format specifier.

    This adjusts the format specifier because PCOffset is uint16_t.
    
    Differential Revision: https://reviews.llvm.org/D64620
    
    llvm-svn: 366189
    igorkudrin committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    74c350a View commit details
    Browse the repository at this point in the history
  15. [DWARF] Fix the reserved values for unit length in DWARFDebugLine.

    The DWARF3 documentation had inconsistency concerning the reserved range
    for unit length values. The issue was fixed in DWARF4.
    
    Differential Revision: https://reviews.llvm.org/D64622
    
    llvm-svn: 366190
    igorkudrin committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    f48bc01 View commit details
    Browse the repository at this point in the history
  16. [NFC][PowerPC] Add test case for D64195

    llvm-svn: 366191
    wuzish committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    a54c466 View commit details
    Browse the repository at this point in the history
  17. [WebAssembly] Rename variale references in comments after VariableNam…

    …e -> variableName change
    
    llvm-svn: 366192
    MaskRay committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    33fdf82 View commit details
    Browse the repository at this point in the history
  18. [COFF] Rename variale references in comments after VariableName -> va…

    …riableName change
    
    llvm-svn: 366193
    MaskRay committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    2e2038b View commit details
    Browse the repository at this point in the history
  19. [clang-scan-view] Force utf-8 when handling report (python2 only)

    Original patch by random human <random.bored.human@gmail.com>
    
    Differential Revision: https://reviews.llvm.org/D64129
    
    llvm-svn: 366194
    Serge Guelton committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    a307752 View commit details
    Browse the repository at this point in the history
  20. [NFC] Test commit: add full stop at end of comment

    llvm-svn: 366195
    Kyrylo Tkachov committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    a3e26d1 View commit details
    Browse the repository at this point in the history
  21. [lldb] Rename Options.inc to CommandOptions.inc [NFC]

    It seems having two Options.inc files in the same project is giving our
    custom Xcode project a hard time. This patch renames the new Options.inc
    to CommandOptions.inc to prevent this conflict.
    
    llvm-svn: 366196
    Teemperor committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    c5a2d74 View commit details
    Browse the repository at this point in the history
  22. [AArch64] Implement __jcvt intrinsic from Armv8.3-A

    The jcvt intrinsic defined in ACLE [1] is available when ARM_FEATURE_JCVT is defined.
    
    This change introduces the AArch64 intrinsic, wires it up to the instruction and a new clang builtin function.
    The __ARM_FEATURE_JCVT macro is now defined when an Armv8.3-A or higher target is used.
    I've implemented the target detection logic in Clang so that this feature is enabled for architectures from armv8.3-a onwards (so -march=armv8.4-a also enables this, for example).
    
    make check-all didn't show any new failures.
    
    [1] https://developer.arm.com/docs/101028/latest/data-processing-intrinsics
    
    Differential Revision: https://reviews.llvm.org/D64495
    
    llvm-svn: 366197
    Kyrylo Tkachov committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    eb72138 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    1781c28 View commit details
    Browse the repository at this point in the history
  24. [clangd] Don't rebuild background index until we indexed one TU per t…

    …hread.
    
    Summary:
    This increases the odds that the boosted file (cpp file matching header)
    will be ready. (It always enqueues first, so it'll be present unless
    another thread indexes *two* files before the first thread indexes one.)
    
    Reviewers: kadircet
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64682
    
    llvm-svn: 366199
    sam-mccall committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    06377ae View commit details
    Browse the repository at this point in the history
  25. [SemaTemplate] Fix uncorrected typos after pack expansion

    Summary:
    This case is particularly important for clangd, as it is triggered after
    inserting the snippet for variadic functions.
    
    Reviewers: kadircet, ilya-biryukov
    
    Subscribers: llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64677
    
    llvm-svn: 366200
    sam-mccall committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    0afffab View commit details
    Browse the repository at this point in the history
  26. Reapply [llvm-ar][test] Add to MRI test coverage

    This reapplies 363232 without mri-utf8.test due to failing on Darwin.
    
    Differential Revision: https://reviews.llvm.org/D63197
    
    llvm-svn: 366201
    Owen Reynolds committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    971ac4c View commit details
    Browse the repository at this point in the history
  27. [Driver] Don't pass --dynamic-linker to ld on Solaris

    I noticed that clang currently passes --dynamic-linker to ld.  This has been the case
    since Solaris 11 support was added initially back in 2012 by David Chisnall (r150580).
    I couldn't find any patch submission, let alone a justification, for this, and it seems
    completely useless: --dynamic-linker is a gld compatibility form of the option, the
    native option being -I.  First of all, however, the dynamic linker passed is simply the
    default, so there's no reason at all to specify it in the first place.
    
    This patch removes passing the option and adjusts the affected testcase accordingly.
    
    Tested on x86_64-pc-solaris2.11 and sparcv9-sun-solaris2.11.
    
    Differential Revision: https://reviews.llvm.org/D64493
    
    llvm-svn: 366202
    rorth committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    a5dc9c9 View commit details
    Browse the repository at this point in the history
  28. [Object/llvm-readelf/llvm-readobj] - Improve error reporting when e_s…

    …hstrndx is broken.
    
    When e_shstrndx is broken, it is impossible to get a section name.
    In this patch I improved the error message we show and 
    added tests for Object and for llvm-readelf/llvm-readobj
    
    Message was changed in two places:
    1) llvm-readelf/llvm-readobj previously used a code from Object/ELF.h,
    now they have a modified version of it (it has less checks and allows
    dumping broken things).
    2) Code in Object/ELF.h is still used for generic cases.
    
    Differential revision: https://reviews.llvm.org/D64714
    
    llvm-svn: 366203
    George Rimar committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    a137087 View commit details
    Browse the repository at this point in the history
  29. Document the LLVM_ENABLE_BINDINGS option

    llvm-svn: 366204
    sylvestre committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    eea8280 View commit details
    Browse the repository at this point in the history
  30. remove a duplicate declaration

    llvm-svn: 366205
    sylvestre committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    116e58e View commit details
    Browse the repository at this point in the history
  31. Reapply [llvm-ar][test] Increase llvm-ar test coverage

    This reapplies 365316 without extract.test due to failing on Darwin.
    
    Differential Revision: https://reviews.llvm.org/D63935
    
    llvm-svn: 366206
    Owen Reynolds committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    3a6aaa4 View commit details
    Browse the repository at this point in the history
  32. [clangd] Added highlighting for the targets in typedefs and using.

    Summary:
    In `typedef int A` the `A` was not highlighted previously.
    
    This patch gives `A` the same kind of highlighting that the underlying type has (class/enum) (which in this example is no special highlighting because builtins are not handled yet)
    Will add highlightings for built ins in another patch.
    
    Reviewers: hokein, sammccall, ilya-biryukov
    
    Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64754
    
    llvm-svn: 366207
    jvikstrom committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    aae7553 View commit details
    Browse the repository at this point in the history
  33. [pstl] Fix compilation with TBB backend

    Some types were not using the right namespace qualification.
    
    llvm-svn: 366208
    ldionne committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    58864fa View commit details
    Browse the repository at this point in the history
  34. [llvm-ar][test] Add to llvm-ar test coverage

    This change adds tests to cover existing llvm-ar functionality.
    print.test is omitted due to failing on Darwin.
    
    Differential Revision: https://reviews.llvm.org/D64330
    
    llvm-svn: 366209
    Owen Reynolds committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    8e482eb View commit details
    Browse the repository at this point in the history
  35. AMDGPU/GlobalISel: Fix test failures in release build

    Apparently the check for legal instructions during instruction
    select does not happen without an asserts build, so these would
    successfully select in release, and fail in debug.
    
    Make s16 and/or/xor legal. These can just be selected directly
    to the 32-bit operation, as is already done in SelectionDAG, so just
    make them legal.
    
    llvm-svn: 366210
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    22c4a14 View commit details
    Browse the repository at this point in the history
  36. [OPENMP]Add support for analysis of if clauses.

    Summary:
    Added support for analysis of if clauses in the OpenMP directives to be
    able to check for the use of uninitialized variables.
    
    Reviewers: NoQ
    
    Subscribers: guansong, jfb, jdoerfert, caomhin, kkwli0, cfe-commits
    
    Tags: clang
    
    Differential Revision: https://reviews.llvm.org/D64646
    
    llvm-svn: 366211
    alexey-bataev committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    655cb4a View commit details
    Browse the repository at this point in the history
  37. [OpenCL] Fixing sampler initialisations for C++ mode.

    Allow conversions between integer and sampler type.
    
    Differential Revision: https://reviews.llvm.org/D64791
    
    llvm-svn: 366212
    Neil Hickey committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    8ece3b6 View commit details
    Browse the repository at this point in the history
  38. [SWIG] Deprecate SWIG 1.x

    The last swig 1.x release dates from 2009, now 10 years ago. Recently, I
    fixed an issue that prevented us from using swig 4 (r364974), which
    turned out to be not backward compatible with swig 1.x (r365718).
    
    This patch deprecates this (really old) version of swig and makes swig 2
    the minimum supported version in LLDB . This should be fine for the
    build bots, which are all running swig 3 or later.
    
    Differential revision: https://reviews.llvm.org/D64782
    
    llvm-svn: 366213
    JDevlieghere committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    d3941e6 View commit details
    Browse the repository at this point in the history
  39. [DAGCombiner] fold (addcarry (xor a, -1), b, c) -> (subcarry b, a, !c…

    …) and flip carry.
    
    Summary:
    As per title. DAGCombiner only mathes the special case where b = 0, this patches extends the pattern to match any value of b.
    
    Depends on D57302
    
    Reviewers: hfinkel, RKSimon, craig.topper
    
    Subscribers: llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D59208
    
    llvm-svn: 366214
    deadalnix committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    f34a69c View commit details
    Browse the repository at this point in the history
  40. [ADCE] Fix non-deterministic behaviour due to iterating over a pointe…

    …r set.
    
    Original patch by Yann Laigle-Chapuy
    
    Differential Revision: https://reviews.llvm.org/D64785
    
    llvm-svn: 366215
    aemerson committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    228a7b4 View commit details
    Browse the repository at this point in the history
  41. [Remarks][NFC] Combine ParserFormat and SerializerFormat

    It's useless to have both.
    
    llvm-svn: 366216
    francisvm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    cc90981 View commit details
    Browse the repository at this point in the history
  42. [Remarks] Simplify and refactor the RemarkParser interface

    Before, everything was based on some kind of type erased parser
    implementation which container a lot of boilerplate code when multiple
    formats were to be supported.
    
    This simplifies it by:
    
    * the remark now owns its arguments
    * *always* returning an error from the implementation side
    * working around the way the YAML parser reports errors: catch them through
    callbacks and re-insert them in a proper llvm::Error
    * add a CParser wrapper that is used when implementing the C API to
    avoid cluttering the C++ API with useless state
    * LLVMRemarkParserGetNext now returns an object that needs to be
    released to avoid leaking resources
    * add a new API to dispose of a remark entry: LLVMRemarkEntryDispose
    
    llvm-svn: 366217
    francisvm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    94bad22 View commit details
    Browse the repository at this point in the history
  43. Add missing test for r366215

    llvm-svn: 366218
    aemerson committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    88ed076 View commit details
    Browse the repository at this point in the history
  44. Revert [tools] [llvm-nm] Default to reading from stdin not a.out

    This reverts r365889 (git commit 60c8135)
    
    llvm-svn: 366219
    abrachet committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    2eacf69 View commit details
    Browse the repository at this point in the history
  45. [OPENMP]Fix threadid in __kmpc_omp_taskwait call for dependent target…

    … calls.
    
    Summary:
    We used to call __kmpc_omp_taskwait function with global threadid set to
    0. It may crash the application at the runtime if the thread executing
     target region is not a master thread.
    
    Reviewers: grokos, kkwli0
    
    Subscribers: guansong, jdoerfert, caomhin, openmp-commits
    
    Tags: #openmp
    
    Differential Revision: https://reviews.llvm.org/D64571
    
    llvm-svn: 366220
    alexey-bataev committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    4281610 View commit details
    Browse the repository at this point in the history
  46. Revert "[swig] Add workaround for old swig"

    With the deprecation of swig 1.x (r366213), this workaround should no
    longer be necessary.
    
    llvm-svn: 366221
    JDevlieghere committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    63a0c2b View commit details
    Browse the repository at this point in the history
  47. [Strict FP] Allow more relaxed scheduling

    Reimplement scheduling constraints for strict FP instructions in
    ScheduleDAGInstrs::buildSchedGraph to allow for more relaxed
    scheduling.  Specifially, allow one strict FP instruction to
    be scheduled across another, as long as it is not moved across
    any global barrier.
    
    Differential Revision: https://reviews.llvm.org/D64412
    
    Reviewed By: cameron.mcinally
    
    llvm-svn: 366222
    uweigand committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    450c62e View commit details
    Browse the repository at this point in the history
  48. [AMDGPU] Add the adjusted FP as a livein register.

    Reviewers: arsenm, rampitec
    
    Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64145
    
    llvm-svn: 366223
    darkbuck committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    b3f967d View commit details
    Browse the repository at this point in the history
  49. [OPENMP][NVPTX]Fixed checks for cuda versions.

    Summary:
    We used CUDART_VERSION macro to check for the installed cuda version
    but this macro is defined in cuda_runtime_api.h, which is not used by
    project. Better to use CUDA_VERSION macro, which is defined in cuda.h.
    Also, added the check if this macro is defined. If macro is undefined,
    there is something wrong with the cuda configuration and we should not
    continue the compilation.
    This also fixes problems with runtime building in cuda 10+.
    
    Reviewers: grokos
    
    Subscribers: guansong, jdoerfert, caomhin, kkwli0, openmp-commits
    
    Tags: #openmp
    
    Differential Revision: https://reviews.llvm.org/D64648
    
    llvm-svn: 366224
    alexey-bataev committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    85b9651 View commit details
    Browse the repository at this point in the history
  50. [TSan] Improve handling of stack pointer mangling in {set,long}jmp, p…

    …t.10
    
    Remove now-unused assembly code for determining xor key on
    Linux/AArch64. This is the final commit of this refactoring.
    
    llvm-svn: 366225
    yln committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    e6e33cf View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    e8ced86 View commit details
    Browse the repository at this point in the history
  52. Removed -mno-omit-leaf-frame-pointer from flags.

    Removes -mno-omit-leaf-frame-pointer from Scudo and GWP-ASan's CFlags. Attempt to fix
    the sanitizer buildbots.
    
    llvm-svn: 366228
    hctim committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    97b4d7a View commit details
    Browse the repository at this point in the history
  53. [OpenMP] Move header inclusion out of 'extern "C"'

    This leads to problems when compiling C++ code with libc++ for Nvidia GPUs
    because Clang now uses wrappers for math functions that might include
    C++ templates not allowed in 'extern "C"'.
    
    Differentiel Revision: https://reviews.llvm.org/D64625
    
    llvm-svn: 366229
    hahnjo committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    1ff5535 View commit details
    Browse the repository at this point in the history
  54. AMDGPU: Fix missing immarg for mfma intrinsics

    llvm-svn: 366230
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    c65a9db View commit details
    Browse the repository at this point in the history
  55. fix unnamed fiefield issue and add tests for __builtin_preserve_acces…

    …s_index intrinsic
    
    The original commit is r366076. It is temporarily reverted (r366155)
    due to test failure. This resubmit makes test more robust by accepting
    regex instead of hardcoded names/references in several places.
    
    This is a followup patch for https://reviews.llvm.org/D61809.
    Handle unnamed bitfield properly and add more test cases.
    
    Fixed the unnamed bitfield issue. The unnamed bitfield is ignored
    by debug info, so we need to ignore such a struct/union member
    when we try to get the member index in the debug info.
    
    D61809 contains two test cases but not enough as it does
    not checking generated IRs in the fine grain level, and also
    it does not have semantics checking tests.
    This patch added unit tests for both code gen and semantics checking for
    the new intrinsic.
    
    Signed-off-by: Yonghong Song <yhs@fb.com>
    llvm-svn: 366231
    yonghong-song committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    4754814 View commit details
    Browse the repository at this point in the history
  56. [NFC] Fix -Wreorder warning in TBB backend

    llvm-svn: 366232
    ldionne committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    c26e27d View commit details
    Browse the repository at this point in the history
  57. Configuration menu
    Copy the full SHA
    3559fcd View commit details
    Browse the repository at this point in the history
  58. AMDGPU: Redefine load PatFrags

    Rewrite PatFrags using the new PatFrag address space matching in
    tablegen. These will now work with both SelectionDAG and GlobalISel.
    
    llvm-svn: 366234
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    c6fd5ab View commit details
    Browse the repository at this point in the history
  59. [AMDGPU] Optimize atomic max/min

    Summary:
    Extend the atomic optimizer to handle signed and unsigned max and min
    operations, as well as add and subtract.
    
    Reviewers: arsenm, sheredom, critson, rampitec
    
    Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, jfb, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64328
    
    llvm-svn: 366235
    jayfoad committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    17060f0 View commit details
    Browse the repository at this point in the history
  60. Teach llvm-pdbutil pretty -native about -injected-sources

    `pretty -native -injected-sources -injected-source-content` works with
    this patch, and produces identical output to the dia version.
    
    Differential Revision: https://reviews.llvm.org/D64428
    
    llvm-svn: 366236
    nico committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    d100b5d View commit details
    Browse the repository at this point in the history
  61. AMDGPU/GlobalISel: Select flat loads

    Now that the patterns use the new PatFrag address space support, the
    only blocker to importing most load patterns is the addressing mode
    complex patterns.
    
    llvm-svn: 366237
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    35c9659 View commit details
    Browse the repository at this point in the history
  62. [COFF] Implement /safeseh:no and check @feat.00 flags by default

    Summary:
    Fixes PR41828. Before this, LLD always emitted SafeSEH chunks and
    defined __safe_se_handler_table & size. Now, /safeseh:no leaves those
    undefined.
    
    Additionally, we were checking for the safeseh @feat.00 flag in two
    places: once to emit errors, and once during safeseh table construction.
    The error was set up to be off by default, but safeseh is supposed to be
    on by default. I combined the two checks, so now LLD emits an error if
    an input object lacks @feat.00 and safeseh is enabled. This caused the
    majority of 32-bit LLD tests to fail, since many test input object files
    lack @feat.00 symbols. I explicitly added -safeseh:no to those tests to
    preserve behavior.
    
    Finally, LLD no longer sets IMAGE_DLL_CHARACTERISTICS_NO_SEH if any
    input file wasn't compiled for safeseh.
    
    Reviewers: mstorsjo, ruiu, thakis
    
    Reviewed By: ruiu, thakis
    
    Subscribers: llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D63570
    
    llvm-svn: 366238
    rnk committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    fe44a53 View commit details
    Browse the repository at this point in the history
  63. AMDGPU: Replace store PatFrags

    Convert the easy cases to formats understood for GlobalISel.
    
    llvm-svn: 366240
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    8f8d07e View commit details
    Browse the repository at this point in the history
  64. [IndVars] Speculative fix for an assertion failure seen in bots

    I don't have an IR sample which is actually failing, but the issue described in the comment is theoretically possible, and should be guarded against even if there's a different root cause for the bot failures.
    
    llvm-svn: 366241
    preames committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    6e1c3bb View commit details
    Browse the repository at this point in the history
  65. AMDGPU: Add register classes to flat store patterns

    For some reason GlobalISelEmitter needs register classes to import
    these, although it works for the load patterns.
    
    llvm-svn: 366242
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    7eb1902 View commit details
    Browse the repository at this point in the history
  66. [CMake] Fail when Python interpreter doesn't match Python libraries v…

    …ersion
    
    Because of how CMake finds the Python libraries and interpreter, it's
    possible to end up with a discrepancy between the two. For example,
    you'd end up using a Python 3 interpreter to run the test suite while
    LLDB was built and linked against Python 2.
    
    This patch adds a fatal error to CMake so we find out at configuration
    time, instead of finding out at test time.
    
    Differential revision: https://reviews.llvm.org/D64812
    
    llvm-svn: 366243
    JDevlieghere committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    5826ab6 View commit details
    Browse the repository at this point in the history
  67. Fix linkrepro.test after safeseh:no change

    Add the @feat.00 flag to the input.
    
    llvm-svn: 366244
    rnk committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    4b6f69f View commit details
    Browse the repository at this point in the history
  68. Mark new test as requiring an x86 backend for LTO native object gener…

    …ation
    
    llvm-svn: 366245
    rnk committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    11dc3d3 View commit details
    Browse the repository at this point in the history
  69. AMDGPU/GlobalISel: Select flat stores

    llvm-svn: 366246
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    dad1f89 View commit details
    Browse the repository at this point in the history
  70. Fix LLDB Windows build Python version logic after r366243

    llvm-svn: 366247
    rnk committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    1d58c1d View commit details
    Browse the repository at this point in the history
  71. AMDGPU/GlobalISel: Select private loads

    llvm-svn: 366248
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    7161fb0 View commit details
    Browse the repository at this point in the history
  72. AMDGPU/GlobalISel: Fix selection of private stores

    llvm-svn: 366249
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    2d10407 View commit details
    Browse the repository at this point in the history
  73. AMDGPU: Fix some missing GCCBuiltin declarations

    llvm-svn: 366250
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    afdf6b3 View commit details
    Browse the repository at this point in the history
  74. Fix -Wreturn-type warning. NFC.

    llvm-svn: 366251
    darkbuck committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    ccf22ef View commit details
    Browse the repository at this point in the history
  75. [AMDGPU] Change register type for v32 vectors

    When it is AReg_1024 this results in unnecessary copying into
    AGPRs of a 32 element vectors even though they are not intended
    for an mfma instruction.
    
    Differential Revision: https://reviews.llvm.org/D64815
    
    llvm-svn: 366252
    rampitec committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    6e0fa29 View commit details
    Browse the repository at this point in the history
  76. [GWP-ASan] Add thread ID to PRNG seed.

    Summary:
    Adds thread ID to PRNG seed for increased entropy. In particular, this allows
    multiple runs in quick succession that will have different PRNG seeds, allowing
    for better demos/testing.
    
    Reviewers: kcc
    
    Reviewed By: kcc
    
    Subscribers: kubamracek, #sanitizers, llvm-commits
    
    Tags: #sanitizers, #llvm
    
    Differential Revision: https://reviews.llvm.org/D64453
    
    llvm-svn: 366253
    hctim committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    b157dca View commit details
    Browse the repository at this point in the history
  77. AMDGPU/GlobalISel: Select G_SHL

    I think this manages to not break the DAG handling with the divergent
    predicates because the stadalone divergent patterns end up with a
    higher priority than the pattern on the instruction definition.
    
    The 16-bit versions don't work yet.
    
    llvm-svn: 366254
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    1b69fd2 View commit details
    Browse the repository at this point in the history
  78. [PowerPC][HTM] Fix impossible reg-to-reg copy assert with ttest builtin

    Summary:
    This is exposed by our internal testing.
    The reduced testcase will assert with "Impossible reg-to-reg copy"
    
    We can't use COPY to do 32-bit to 64-bit conversion.
    
    Reviewers: kbarton, hfinkel, nemanjai
    
    Reviewed By: hfinkel
    
    Subscribers: hiraditya, MaskRay, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64499
    
    llvm-svn: 366255
    Jinsong Ji committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    65e34a3 View commit details
    Browse the repository at this point in the history
  79. AMDGPU/GlobalISel: Select G_LSHR

    llvm-svn: 366256
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    e5b28b9 View commit details
    Browse the repository at this point in the history
  80. AMDGPU/GlobalISel: Select G_ASHR

    llvm-svn: 366257
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    f8c8284 View commit details
    Browse the repository at this point in the history
  81. [TSan] Improve handling of stack pointer mangling in {set,long}jmp, pt.6

    Cleanup ARM64 assembly after removing unnecessary computation of mangled
    stack pointer in previous commit.
    
    llvm-svn: 366258
    yln committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    d069a19 View commit details
    Browse the repository at this point in the history
  82. [libc++] Add missing UNSUPPORTED for CTAD tests

    The tests for unordered_set and unordered_multiset were missing UNSUPPORTED
    markup for Apple Clang 9.1, which is still being used on some CI bots.
    
    llvm-svn: 366259
    ldionne committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    12154ee View commit details
    Browse the repository at this point in the history
  83. [NFC][ScopBuilder] Move addRecordedAssumption to ScopBuilder

    Scope of changes:
    1) Moved addRecordedAssumptions to ScopBuilder.
    2) Moved Assumption struct outside Scop class.
    3) Refactored addRecordedAssumptions function. Replaced while loop by
    for range loop.
    4) Added function to clear processed Assumptions.
    
    Differential Revision: https://reviews.llvm.org/D63572
    
    llvm-svn: 366260
    DominikAdamski committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    ddbb837 View commit details
    Browse the repository at this point in the history
  84. [Symbol] Remove unused fields from ClangASTContext

    llvm-svn: 366261
    bulbazord committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    0e534de View commit details
    Browse the repository at this point in the history
  85. [NFC][ScopBuilder] Move buildAliasChecks and its implementing methods…

    … to ScopBuilder
    
    Scope of changes:
    1) Moved buildAliasChecks to ScopBuilder.
    2) Moved buildAliasGroup to ScopBuilder.
    3) Moved buildAliasGroups to ScopBuilder.
    4) Moved buildAliasGroupsForAccesses to ScopBuilder.
    5) Moved splitAliasGroupsByDomain to ScopBuilder.
    6) Moved addNonEmptyDomainConstraints to ScopBuilder.
    7) Moved buildMinMaxAccess to ScopBuilder.
    8) Moved calculateMinMaxAccess to ScopBuilder.
    9) Moved getAccessDomain to ScopBuilder.
    10) Moved command line options used only by buildAliasChecks functions to ScopBuilder.
    11) Refactored buildAliasGroup function. Added addAliasGroup function to Scop class for pushing back calculated min/max accesses.
    12) Added function incrementNumberOfAliasingAssumptions which increments number of statistic variable AssumptionsAliasing. AssumptionsAliasing variable is defined by STATISTIC macro inside ScopInfo.cpp and it is also used by function trackAssumption from Scop class.
    13) Added reference to OptimizationRemarkEmitter to ScopBuilder class.
    14) Moved calculateMinMaxAccess function to ScopBuilder class.
    
    Differential Revision: https://reviews.llvm.org/D63693
    
    llvm-svn: 366262
    DominikAdamski committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    588fc9e View commit details
    Browse the repository at this point in the history
  86. [libcxx] Rejigger test for destroying delete feature-test macros

    In r361572, we introduced library support for C++20 destroying delete
    and decided to only define the library feature-test macro when the
    compiler supports the underlying language feature. This patch reworks
    the tests to mirror that.
    
    llvm-svn: 366263
    ldionne committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    e559f62 View commit details
    Browse the repository at this point in the history
  87. DWARF: Skip zero column for inline call sites

    D64033 <https://reviews.llvm.org/D64033> added DW_AT_call_column for
    inline sites. However, that change wasn't aware of "-gno-column-info".
    To avoid adding column info when "-gno-column-info" is used, now
    DW_AT_call_column is only added when we have non-zero column (when
    "-gno-column-info" is used, column will be zero).
    
    Patch by Wenlei He!
    
    Differential Revision: https://reviews.llvm.org/D64784
    
    llvm-svn: 366264
    dwblaikie committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    40580d3 View commit details
    Browse the repository at this point in the history
  88. [clang-tidy] initial version of readability-convert-member-functions-…

    …to-static
    
    Summary:
    Finds non-static member functions that can be made ``static``.
    
    I have run this check (repeatedly) over llvm-project. It made 1708 member functions
    ``static``. Out of those, I had to exclude 22 via ``NOLINT`` because their address
    was taken and stored in a variable of pointer-to-member type (e.g. passed to
    llvm::StringSwitch).
    It also made 243 member functions ``const``. (This is currently very conservative
    to have no false-positives and can hopefully be extended in the future.)
    
    You can find the results here: https://github.com/mgehre/llvm-project/commits/static_const_eval
    
    Reviewers: alexfh, aaron.ballman
    
    Subscribers: mgorny, xazax.hun, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D61749
    
    llvm-svn: 366265
    mgehre committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    ffca322 View commit details
    Browse the repository at this point in the history
  89. [NFC][ScopBuilder] Move addUserContext to ScopBuilder

    Scope of changes:
    1) Moved addUserContext to ScopBuilder.
    2) Moved command line option UserContextStr to ScopBuilder.
    
    Differential Revision: https://reviews.llvm.org/D63740
    
    llvm-svn: 366266
    DominikAdamski committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    fdc61bc View commit details
    Browse the repository at this point in the history
  90. [clang-format] Don't detect call to ObjC class method as C++11 attrib…

    …ute specifier
    
    Summary:
    Previously, clang-format detected something like the following as a C++11 attribute specifier.
    
      @[[NSArray class]]
    
    instead of an array with an Objective-C method call inside. In general, when the attribute specifier checking runs, if it sees 2 identifiers in a row, it decides that the square brackets represent an Objective-C method call. However, here, `class` is tokenized as a keyword instead of an identifier, so this check fails.
    
    To fix this, the attribute specifier first checks whether the first square bracket has an "@" before it. If it does, then that square bracket is not the start of a attribute specifier because it is an Objective-C array literal. (The assumption is that @[[.*]] is not valid C/C++.)
    
    Contributed by rkgibson2.
    
    Reviewers: benhamilton
    
    Reviewed By: benhamilton
    
    Subscribers: aaron.ballman, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64632
    
    llvm-svn: 366267
    bhamiltoncx committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    f4c2d57 View commit details
    Browse the repository at this point in the history
  91. [x86] use more phadd for reductions

    This is part of what is requested by PR42023:
    https://bugs.llvm.org/show_bug.cgi?id=42023
    
    There's an extension needed for FP add, but exactly how we would specify
    that using flags is not clear to me, so I left that as a TODO.
    We're still missing patterns for partial reductions when the input vector
    is 256-bit or 512-bit, but I think that's a failure of vector narrowing.
    If we can reduce the widths, then this matching should work on those tests.
    
    Differential Revision: https://reviews.llvm.org/D64760
    
    llvm-svn: 366268
    rotateright committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    d746a21 View commit details
    Browse the repository at this point in the history
  92. [ORC][docs] Trim ORCv1 to ORCv2 transition section, add a how-to sect…

    …ion.
    
    llvm-svn: 366269
    lhames committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    607cd44 View commit details
    Browse the repository at this point in the history
  93. [ORC][docs] Fix an RST error: the code-block directive needs a newlin…

    …e after it.
    
    llvm-svn: 366270
    lhames committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    c23619b View commit details
    Browse the repository at this point in the history
  94. AMDGPU: Partially revert r366250

    GCCBuiltin doesn't work for these, because they have a mangled type
    (although they arguably should not).
    
    llvm-svn: 366271
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    21f2858 View commit details
    Browse the repository at this point in the history
  95. [WebAssembly] Implement thread-local storage (local-exec model)

    Summary:
    Thread local variables are placed inside a `.tdata` segment. Their symbols are
    offsets from the start of the segment. The address of a thread local variable
    is computed as `__tls_base` + the offset from the start of the segment.
    
    `.tdata` segment is a passive segment and `memory.init` is used once per thread
    to initialize the thread local storage.
    
    `__tls_base` is a wasm global. Since each thread has its own wasm instance,
    it is effectively thread local. Currently, `__tls_base` must be initialized
    at thread startup, and so cannot be used with dynamic libraries.
    
    `__tls_base` is to be initialized with a new linker-synthesized function,
    `__wasm_init_tls`, which takes as an argument a block of memory to use as the
    storage for thread locals. It then initializes the block of memory and sets
    `__tls_base`. As `__wasm_init_tls` will handle the memory initialization,
    the memory does not have to be zeroed.
    
    To help allocating memory for thread-local storage, a new compiler intrinsic
    is introduced: `__builtin_wasm_tls_size()`. This instrinsic function returns
    the size of the thread-local storage for the current function.
    
    The expected usage is to run something like the following upon thread startup:
    
        __wasm_init_tls(malloc(__builtin_wasm_tls_size()));
    
    Reviewers: tlively, aheejin, kripken, sbc100
    
    Subscribers: dschuff, jgravelle-google, hiraditya, sunfish, jfb, cfe-commits, llvm-commits
    
    Tags: #clang, #llvm
    
    Differential Revision: https://reviews.llvm.org/D64537
    
    llvm-svn: 366272
    quantum5 committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    42bba4b View commit details
    Browse the repository at this point in the history
  96. Add REQUIRES: x86 to safeseh-no.s test for x86

    llvm-svn: 366273
    rnk committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    fa57583 View commit details
    Browse the repository at this point in the history
  97. [TableGen] Add "getOperandType" to get operand types from opcode/opidx

    The InstrInfoEmitter outputs an enum called "OperandType" which gives
    numerical IDs to each operand type. This patch makes use of this enum
    to define a function called "getOperandType", which allows looking up
    the type of an operand given its opcode and operand index.
    
    Patch by Nicolas Guillemot. Thanks!
    
    Differential Revision: https://reviews.llvm.org/D63320
    
    llvm-svn: 366274
    bogner committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    fe66fdb View commit details
    Browse the repository at this point in the history
  98. [WebAssembly] Compile all TLS on Emscripten as local-exec

    Summary:
    Currently, on Emscripten, dynamic linking is not supported with threads.
    This means that if thread-local storage is used, it must be used in a
    statically-linked executable. Hence, local-exec is the only possible model.
    
    This diff compiles all TLS variables to use local-exec on Emscripten as a
    temporary measure until dynamic linking is supported with threads.
    
    The goal for this is to allow C++ types with constructors to be thread-local.
    
    Currently, when `clang` compiles a `thread_local` variable with a constructor,
    it generates `__tls_guard` variable:
    
        @__tls_guard = internal thread_local global i8 0, align 1
    
    As no TLS model is specified, this is treated as general-dynamic, which we do
    not support (and cannot support without implementing dynamic linking support
    with threads in Emscripten). As a result, any C++ constructor in `thread_local`
    variables would not compile.
    
    By compiling all `thread_local` as local-exec, `__tls_guard` will compile and
    we can support C++ constructors with TLS without implementing dynamic linking
    with threads.
    
    Depends on D64537
    
    Reviewers: tlively, aheejin, sbc100
    
    Reviewed By: aheejin
    
    Subscribers: dschuff, jgravelle-google, hiraditya, sunfish, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64776
    
    llvm-svn: 366275
    quantum5 committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    0a8d4df View commit details
    Browse the repository at this point in the history
  99. Fix a typo in target features

    There was a slight typo in r364352 that ended up causing our backend to
    complain on some x86 Android builds. This CL fixes that.
    
    Differential Revision: https://reviews.llvm.org/D64781
    
    llvm-svn: 366276
    gburgessiv committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    fdeed83 View commit details
    Browse the repository at this point in the history
  100. [TableGen] Generate offsets into a flat array for getOperandType

    Rather than an array of std::initializer_list, generate a table of
    offsets and a flat array of the operands for getOperandType. This is a
    bit more efficient on platforms that don't manage to get the array of
    inintializer_lists initialized at link time (I'm looking at you
    macOS). It's also quite quite a bit faster to compile.
    
    llvm-svn: 366278
    bogner committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    418516c View commit details
    Browse the repository at this point in the history
  101. GlobalISel: Add overload of handleAssignments with CCState

    AMDGPU needs to allocate special argument registers separately from
    the user function argument list, so needs direct control over the
    CCState.
    
    The ArgLocs argument is only really necessary because CCState doesn't
    allow access to it.
    
    llvm-svn: 366279
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    1c3f4ec View commit details
    Browse the repository at this point in the history
  102. ARM: Fix missing immarg for space intrinsic

    llvm-svn: 366280
    arsenm committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    1bd9c65 View commit details
    Browse the repository at this point in the history
  103. add a workaround in GetLine to account for ReadFile not reporintg error

    Summary:
    ReadFile on Windows is supposed to set ERROR_OPERATION_ABORTED according
    to the docs on MSDN. However, this has evidently been a known bug since
    Windows 8. Therefore, we can't detect if a signal interrupted in the
    fgets. So pressing ctrl-c causes the repl to end and the process to
    exit. A temporary workaround is just to attempt to fgets twice until
    this bug is fixed.
    
    A possible alternative would be to set a flag in the `sigint_handler`
    and simply check that flag in the true part of the if statement.
    However, signal handlers on Windows are asynchronous and this would
    require sleeping on the repl loop thread while still not necessarily
    guarnateeing that you caught the sigint.
    
    Reviewers: jfb
    
    Differential Revision: https://reviews.llvm.org/D64660
    
    llvm-svn: 366281
    lanza committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    e716790 View commit details
    Browse the repository at this point in the history
  104. Fix darwin-ld.c if dsymutil.exe exists on PATH

    llvm-svn: 366282
    rnk committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    2ecca78 View commit details
    Browse the repository at this point in the history
  105. [AMDGPU] Autogenerate register asm names

    Differential Revision: https://reviews.llvm.org/D64839
    
    llvm-svn: 366283
    rampitec committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    e5012ab View commit details
    Browse the repository at this point in the history
  106. Fix OpenCLCXX test on 32-bit Windows where thiscall is present

    llvm-svn: 366284
    rnk committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    9304e59 View commit details
    Browse the repository at this point in the history
  107. Don't require python exe and lib versions to match while crosscompiling

    Summary:
    While cross compiling, the python executable is used to run a handful
    of scripts while the libraries are linked and headers are included.
    Theoretically it's possible for the versions to match completely, but
    requiring the build to match 2.7.10 to 2.7.15 is unnecessary.
    
    Subscribers: mgorny
    
    Differential Revision: https://reviews.llvm.org/D64822
    
    llvm-svn: 366285
    lanza committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    98a4879 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2019

  1. AMDGPU: Add some missing builtins

    llvm-svn: 366286
    arsenm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    e56865d View commit details
    Browse the repository at this point in the history
  2. gn build: Merge r366216

    llvm-svn: 366288
    nico committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    420f3f6 View commit details
    Browse the repository at this point in the history
  3. gn build: Merge r366265

    llvm-svn: 366289
    nico committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    67cf3d6 View commit details
    Browse the repository at this point in the history
  4. Update email address.

    llvm-svn: 366291
    ecnelises committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    4c77a69 View commit details
    Browse the repository at this point in the history
  5. [Target][NFCI] Rename variable

    This variable doesn't have anything to do with clang.
    
    llvm-svn: 366292
    bulbazord committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    e574f8b View commit details
    Browse the repository at this point in the history
  6. [NativePDB] Make GetTranslationUnitDecl return an lldb CompilerDeclCtx

    Summary:
    We intend to make PdbAstBuilder abstract and implement
    PdbAstBuilderClang along with any other languages that wish to use
    PDBs. This is the first step.
    
    Differential Revision: https://reviews.llvm.org/D64852
    
    llvm-svn: 366293
    lanza committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    06bf5d8 View commit details
    Browse the repository at this point in the history
  7. [LoopInfo] Fix getUniqueNonLatchExitBlocks

    It is possible that exit block has two predecessors and one of them is a latch
    block while another is not.
    
    Current algorithm is based on the assumption that all exits are dedicated
    and therefore we can check only first predecessor of loop exit to find all unique
    exits.
    
    However if we do not consider latch block and it is first predecessor of some
    exit then this exit will be found.
    
    Regression test is added.
    
    As a side effect of algorithm re-writing, the restriction that all exits are dedicated
    is eliminated.
    
    Reviewers: reames, fhahn, efriedma
    Reviewed By: efriedma
    Subscribers: llvm-commits
    Differential Revision: https://reviews.llvm.org/D64787
    
    llvm-svn: 366294
    Serguei Katkov committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    587d13d View commit details
    Browse the repository at this point in the history
  8. [Target][NFCI] Remove commented out code

    llvm-svn: 366295
    bulbazord committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    fc1c8f5 View commit details
    Browse the repository at this point in the history
  9. [mips] Support the "o" inline asm constraint

    As well as other LLVM targets we do not handle "offsettable"
    memory addresses in any special way. In other words, the "o" constraint
    is an exact equivalent of the "m" one. But some existing code require
    the "o" constraint support.
    
    This fixes PR42589.
    
    Differential Revision: https://reviews.llvm.org/D64792
    
    llvm-svn: 366299
    atanasyan committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    7f308af View commit details
    Browse the repository at this point in the history
  10. [mips] Implement .cplocal directive

    This directive forces to use the alternate register for context pointer.
    For example, this code:
      .cplocal $4
      jal foo
    expands to:
      ld    $25, %call16(foo)($4)
      jalr  $25
    
    Differential Revision: https://reviews.llvm.org/D64743
    
    llvm-svn: 366300
    atanasyan committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    a884afb View commit details
    Browse the repository at this point in the history
  11. [mips] Use mult/mflo pattern on 64-bit targets prior to MIPS64

    The `MUL` instruction is available starting from the MIPS32/MIPS64 targets.
    
    llvm-svn: 366301
    atanasyan committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    4c1e440 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    6d4b1c0 View commit details
    Browse the repository at this point in the history
  13. [mips] Remove redundant test case. NFC

    The `inlineasm-constraint-reg64.ll` test checks the same functionality.
    
    llvm-svn: 366303
    atanasyan committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    1292464 View commit details
    Browse the repository at this point in the history
  14. Replace CRLF with LF.

    llvm-svn: 366304
    rui314 committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    42cfbaf View commit details
    Browse the repository at this point in the history
  15. [Driver] Enable __cxa_atexit on Solaris

    Starting with Solaris 11.4 (which is now the required minimal version), Solaris does
    support __cxa_atexit.  This patch reflects that.
    
    One might consider removing the affected tests altogether instead of inverting them,
    as is done on other targets.
    
    Besides, this lets two ASan tests PASS:
    
      AddressSanitizer-i386-sunos :: TestCases/init-order-atexit.cc
      AddressSanitizer-i386-sunos-dynamic :: TestCases/init-order-atexit.cc
    
    Tested on x86_64-pc-solaris2.11 and sparcv9-sun-solaris2.11.
    
    Differential Revision: https://reviews.llvm.org/D64491
    
    llvm-svn: 366305
    rorth committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    9662721 View commit details
    Browse the repository at this point in the history
  16. [OpenCL][Sema] Minor refactoring and constraint checking

    Summary:
    Simplify code a bit and add assertion to address post-landing comments
    from D64083.
    
    Subscribers: yaxunl, Anastasia, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64804
    
    llvm-svn: 366306
    mantognini committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    9eb9590 View commit details
    Browse the repository at this point in the history
  17. [ELF] Delete redundant pageAlign at PT_GNU_RELRO boundaries after D58892

    Summary:
    After D58892 split the RW PT_LOAD on the PT_GNU_RELRO boundary, the new
    layout is:
    
    PT_LOAD(PT_GNU_RELRO(.data.rel.ro .bss.rel.ro)) PT_LOAD(.data. .bss)
    
    The two pageAlign() calls at PT_GNU_RELRO boundaries are redundant due
    to the existence of PT_LOAD.
    
    Reviewers: grimar, peter.smith, ruiu, espindola
    
    Reviewed By: ruiu
    
    Subscribers: sfertile, atanasyan, emaste, arichardson, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64854
    
    llvm-svn: 366307
    MaskRay committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    2be0ebb View commit details
    Browse the repository at this point in the history
  18. [ARM GlobalISel] Cleanup CallLowering. NFC

    Migrate CallLowering::lowerReturnVal to use the same infrastructure as
    lowerCall/FormalArguments and remove the now obsolete code path from
    splitToValueTypes.
    
    Forgot to push this earlier.
    
    llvm-svn: 366308
    rovka committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    37e403d View commit details
    Browse the repository at this point in the history
  19. [llvm-ar][test] Add coverage for replace and update key letters

    Some more tests to increase llvm-ar test coverage, this time for replace 'r' and update 'u'.
    
    Differential Revision: https://reviews.llvm.org/D64803
    
    llvm-svn: 366309
    Owen Reynolds committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    247add6 View commit details
    Browse the repository at this point in the history
  20. [clangd] Fix error message in tweaktests to be useful. NFC

    llvm-svn: 366311
    sam-mccall committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    11b0624 View commit details
    Browse the repository at this point in the history
  21. [TableGen] Do not set ReadNone attribute on intrinsics with side effects

    If an intrinsic is defined without outputs, but having side effects,
    it still can be removed completely from the program. This patch makes
    TableGen not set Attribute::ReadNone for intrinsics which
    are declared with IntrHasSideEffects.
    
    Differential Revision: https://reviews.llvm.org/D64414
    
    llvm-svn: 366312
    momchil-velikov committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    52c3939 View commit details
    Browse the repository at this point in the history
  22. AMDGPU: Improve alias analysis for GDS

    Summary: GDS cannot alias anything else.
    
    Original patch by: Marek Olšák
    
    Reviewers: arsenm, mareko
    
    Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, Petar.Avramovic, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64114
    
    Change-Id: I07bfbd96f5d5c37a6dfba7997df12f291dd794b0
    llvm-svn: 366313
    nhaehnle committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    a256b8b View commit details
    Browse the repository at this point in the history
  23. AMDGPU/GFX10: Apply the VMEM-to-scalar-write hazard also to writes to…

    … EXEC
    
    Summary: Change-Id: I854fbf7d48e937bef9f8f3f5d0c8aeb970652630
    
    Reviewers: rampitec, mareko
    
    Subscribers: arsenm, kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64807
    
    Change-Id: I4405b3a7f84186acea5a78d291bff71056e745fc
    llvm-svn: 366314
    nhaehnle committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    8b7041a View commit details
    Browse the repository at this point in the history
  24. [AArch64] Consistent types and naming for AArch64 target features (NFC)

    Differential Revision: https://reviews.llvm.org/D64415
    
    Committed as obvious.
    
    llvm-svn: 366315
    momchil-velikov committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    e14cfe2 View commit details
    Browse the repository at this point in the history
  25. [lldb][NFC] Tablegenify watchpoint commands

    Part of the project that migrates these struct initializers to our
    new lldb-tablegen.
    
    llvm-svn: 366316
    Teemperor committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    60bd7a9 View commit details
    Browse the repository at this point in the history
  26. [MIPS GlobalISel] ClampScalar and select pointer G_ICMP

    Add narrowScalar to half of original size for G_ICMP.
    ClampScalar G_ICMP's operands 2 and 3 to to s32.
    Select G_ICMP for pointers for MIPS32. Pointer compare is same
    as for integers, it is enough to declare them as legal type.
    
    Differential Revision: https://reviews.llvm.org/D64856
    
    llvm-svn: 366317
    Petar Avramovic authored and Petar Avramovic committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    1e62635 View commit details
    Browse the repository at this point in the history
  27. PowerPC/SPE: Fix load/store handling for SPE

    Summary:
    Pointed out in a comment for D49754, register spilling will currently
    spill SPE registers at almost any offset.  However, the instructions
    `evstdd` and `evldd` require a) 8-byte alignment, and b) a limit of 256
    (unsigned) bytes from the base register, as the offset must fix into a
    5-bit offset, which ranges from 0-31 (indexed in double-words).
    
    The update to the register spill test is taken partially from the test
    case shown in D49754.
    
    Additionally, pointed out by Kei Thomsen, globals will currently use
    evldd/evstdd, though the offset isn't known at compile time, so may
    exceed the 8-bit (unsigned) offset permitted.  This fixes that as well,
    by forcing it to always use evlddx/evstddx when accessing globals.
    
    Part of the patch contributed by Kei Thomsen.
    
    Reviewers: nemanjai, hfinkel, joerg
    
    Subscribers: kbarton, jsji, llvm-commits
    
    Differential Revision: https://reviews.llvm.org/D54409
    
    llvm-svn: 366318
    Justin Hibbits committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    5214956 View commit details
    Browse the repository at this point in the history
  28. PowerPC: Fix register spilling for SPE registers

    Summary:
    Missed in the original commit, use the correct callee-saved register
    list for spilling, instead of the standard SVR432 list.  This avoids
    needlessly spilling the SPE non-volatile registers when they're not used.
    
    As part of this, also add where missing, and sort, the spill opcode
    checks for SPE and SPE4 register classes.
    
    Reviewers: nemanjai, hfinkel, joerg
    
    Subscribers: kbarton, jsji, llvm-commits
    
    Differential Revision: https://reviews.llvm.org/D56703
    
    llvm-svn: 366319
    Justin Hibbits committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    0257c6b View commit details
    Browse the repository at this point in the history
  29. [clangd] Handle windows line endings in QueryDriver

    Summary: fixes second case of clangd/clangd#93
    
    Reviewers: sammccall
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64789
    
    llvm-svn: 366320
    kadircet committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    6011a28 View commit details
    Browse the repository at this point in the history
  30. [clangd] Force the required interpretation of #import on windows tests.

    Summary: NFC but should fix a bunch of tests.
    
    Reviewers: kadircet
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64857
    
    llvm-svn: 366321
    sam-mccall committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    2889fe6 View commit details
    Browse the repository at this point in the history
  31. [AArch64] Add support for Transactional Memory Extension (TME)

    TME is a future architecture technology, documented in
    
    https://developer.arm.com/architectures/cpu-architecture/a-profile/exploration-tools
    https://developer.arm.com/docs/ddi0601/a
    
    More about the future architectures:
    
    https://community.arm.com/developer/ip-products/processors/b/processors-ip-blog/posts/new-technologies-for-the-arm-a-profile-architecture
    
    This patch adds support for the TME instructions TSTART, TTEST, TCOMMIT, and
    TCANCEL and the target feature/arch extension "tme".
    
    It also implements TME builtin functions, defined in ACLE Q2 2019
    (https://developer.arm.com/docs/101028/latest)
    
    Patch by Javed Absar and Momchil Velikov
    
    Differential Revision: https://reviews.llvm.org/D64416
    
    llvm-svn: 366322
    momchil-velikov committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    4b8da3a View commit details
    Browse the repository at this point in the history
  32. [AMDGPU] Optimize atomic AND/OR/XOR

    Summary: Extend the atomic optimizer to handle AND, OR and XOR.
    
    Reviewers: arsenm, sheredom
    
    Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, jfb, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64809
    
    llvm-svn: 366323
    jayfoad committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    70235c6 View commit details
    Browse the repository at this point in the history
  33. [llvm-ar][test] \r\n -> \n

    Also simplify some empty output tests with 'count 0'
    
    llvm-svn: 366324
    MaskRay committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    62069ac View commit details
    Browse the repository at this point in the history
  34. [ASTImporter] Fix LLDB lookup in transparent ctx and with ext src

    Summary:
    With LLDB we use localUncachedLookup(), however, that fails to find
    Decls when a transparent context is involved and the given DC has
    external lexical storage.  The solution is to use noload_lookup, which
    works well with transparent contexts.  But, we cannot use only the
    noload_lookup since the slow case of localUncachedLookup is still needed
    in some other cases.
    
    These other cases are handled in ASTImporterLookupTable, but we cannot
    use that with LLDB since that traverses through the AST which initiates
    the load of external decls again via DC::decls().
    
    We must avoid loading external decls during the import becuase
    ExternalASTSource is implemented with ASTImporter, so external loads
    during import results in uncontrolled and faulty import.
    
    Reviewers: shafik, teemperor, jingham, clayborg, a_sidorin, a.sidorin
    
    Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits, lldb-commits
    
    Tags: #clang, #lldb
    
    Differential Revision: https://reviews.llvm.org/D61333
    
    llvm-svn: 366325
    Gabor Marton committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    aefcf51 View commit details
    Browse the repository at this point in the history
  35. [RISCV][NFC] Add tests that capture current encodings for DWARF EH

    Items which are known to be wrong/different vs GCC are marked as TODO and will
    be address in follow-up patches.
    
    llvm-svn: 366326
    asb committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    aa55124 View commit details
    Browse the repository at this point in the history
  36. [RISCV] Set correct encodings for DWARF exception handling

    This patch sets correct encodings for DWARF exception handling for RISC-V
    (other than call site encoding, which must be udata4 rather than uleb128 and
    is handled by D63415).
    
    This has the same intend as D63409, except this version matches GCC/binutils
    behaviour which uses the same encodings regardless of PIC/non-PIC and
    medlow/medany code model.
    
    llvm-svn: 366327
    asb committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    b94c233 View commit details
    Browse the repository at this point in the history
  37. Mips: Remove immarg from copy and insert intrinsics

    These intrinsics do in fact work with non-constant index arguments.
    
    These are lowered to either the generic
    ISD::INSERT_VECTOR_ELT/ISD::EXTRACT_VECTOR_ELT, or to
    VEXTRACT_SEXT_ELT. The handling of these all accept variable
    indexes. Turning these into generic instructions which do allow
    variables introduces complications in a future change to immarg
    handling.
    
    Since these just turn into generic instructions, these are kind of
    pointless and should probably just be autoupgraded to
    extractelement/insertelement.
    
    llvm-svn: 366328
    arsenm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    6584c48 View commit details
    Browse the repository at this point in the history
  38. [AsmPrinter] Make the encoding of call sites in .gcc_except_table con…

    …figurable and use for RISC-V
    
    The original behavior was to always emit the offsets to each call site in the
    call site table as uleb128 values, however on some architectures (eg RISCV)
    these uleb128 offsets into the code cannot always be resolved until link time
    (because relaxation will invalidate any calculated offsets), and there are no
    appropriate relocations for uleb128 values. As a consequence it needs to be
    possible to specify an alternative.
    
    This also switches RISCV to use DW_EH_PE_udata4 for call side encodings in
    .gcc_except_table
    
    Differential Revision: https://reviews.llvm.org/D63415
    Patch by Edward Jones.
    
    llvm-svn: 366329
    asb committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    ab009a6 View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    c74fded View commit details
    Browse the repository at this point in the history
  40. [RISCV] Add RISCV to LLVM_ALL_TARGETS so it s built by default

    This follows the RFC <http://lists.llvm.org/pipermail/llvm-dev/2019-July/133724.html>.
    
    Follow-on commits will add appropriate release notes changes etc.
    
    Pushing this now and in a minimal form so there is reasonable time before 9.0
    branches to resolve any issues arising from e.g. the backend being exposed on
    different sanitizer setups.
    
    The current builder for RISC-V is on the staging build-bot
    <http://lab.llvm.org:8014/builders/llvm-riscv-linux>, however with the RISCV
    backend being built by default it won't provide any real additional coverage.
    We will shortly set up a builder that runs the test-suite in qemu-user.
    
    llvm-svn: 366331
    asb committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    80de11e View commit details
    Browse the repository at this point in the history
  41. [ASTImporter] Fix structural eq of lambdas

    Summary:
    The structural equivalence check reported false eq between lambda classes
    with different parameters in their call signature.
    The solution is to check the methods for equality too in case of lambda
    classes.
    
    Reviewers: a_sidorin, a.sidorin
    
    Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64075
    
    llvm-svn: 366332
    Gabor Marton committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    ae512b8 View commit details
    Browse the repository at this point in the history
  42. [lld] Add Visual Studio compatible diagnostics

    Summary:
    Add a --vs-diagnostics flag that alters the format of diagnostic output
    to enable source hyperlinks in Visual Studio.
    
    Differential Revision: https://reviews.llvm.org/D58484
    
    Reviewed by: ruiu
    
    llvm-svn: 366333
    Chris Jackson committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    8788629 View commit details
    Browse the repository at this point in the history
  43. [llvm-ar][test] Add tests failing on Darwin

    These tests that failed on Darwin but passed on other machines due to the default archive format differing
    on a Darwin machine, and what looks to be bugs in the output of this format.
    I can not investigate these issue further so the tests are considered expected failures on Darwin.
    
    Differential Revision: https://reviews.llvm.org/D64802
    
    llvm-svn: 366334
    Owen Reynolds committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    629273e View commit details
    Browse the repository at this point in the history
  44. [Attributor] Deduce "willreturn" function attribute

    Summary:
    Deduce the "willreturn" attribute for functions.
    
    For now, intrinsics are not willreturn. More annotation will be done in another patch.
    
    Reviewers: jdoerfert
    
    Subscribers: jvesely, nhaehnle, nicholas, hiraditya, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D63046
    
    llvm-svn: 366335
    uenoku committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    11d3710 View commit details
    Browse the repository at this point in the history
  45. [OPENMP]Fix crash in LoopCounterRefChecker when MemberExpr is not Var…

    … or Field
    
    checkDecl is only valid for VarDecls or FieldDecls, since getCanonicalDecl
    expects only these. Prevent other Decl kinds (such as CXXMethodDecls and
    EnumConstantDecls) from entering and asserting.
    
    Differential Revision: https://reviews.llvm.org/D64842
    
    llvm-svn: 366336
    mikerice1969 committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    552c2c0 View commit details
    Browse the repository at this point in the history
  46. [clang-tidy] Adjust location of namespace comment diagnostic

    Summary:
    If there is no comment, place it at the closing brace of a namespace
    definition. Previously it was placed at the next character after the
    closing brace.
    
    The new position produces a better location for highlighting in clangd
    and does not seem to make matters worse for clang-tidy.
    
    Reviewers: alexfh, hokein
    
    Reviewed By: alexfh, hokein
    
    Subscribers: xazax.hun, kadircet, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64861
    
    llvm-svn: 366337
    ilya-biryukov committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    f81ee43 View commit details
    Browse the repository at this point in the history
  47. [clangd] Type hierarchy: don't resolve parents if the client only ask…

    …ed for children
    
    Summary: Also reorganize the code for computing supertypes to make it more symmetric to subtypes.
    
    Reviewers: kadircet
    
    Reviewed By: kadircet
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64613
    
    llvm-svn: 366338
    HighCommander4 committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    e61d025 View commit details
    Browse the repository at this point in the history
  48. Fix MSVC 'implicitly capture' compile error. NFCI.

    llvm-svn: 366339
    RKSimon committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    0730710 View commit details
    Browse the repository at this point in the history
  49. AMDGPU: Use getTargetConstant

    Avoids creating an extra intermediate mov.
    
    llvm-svn: 366340
    arsenm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    06eed42 View commit details
    Browse the repository at this point in the history
  50. Remove REQUIRES OMP spec version within lit tests

    This is a follow up patch to D64534 (r365963) which removed all OMP
    spec versioning within the OpenMP runtime codebase.  This patch removes
    REQUIRES: openmp-x.y lines from lit tests.
    
    llvm-svn: 366341
    jpeyton52 committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    aa5cdaf View commit details
    Browse the repository at this point in the history
  51. [ASan] Support {f}puts(NULL) on Darwin

    On Darwin, the man page states that "both fputs() and puts() print
    `(null)' if str is NULL."
    
    rdar://48227136
    
    Reviewed By: Lekensteyn
    
    Differential Revision: https://reviews.llvm.org/D64773
    
    llvm-svn: 366342
    yln committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    9a050f9 View commit details
    Browse the repository at this point in the history
  52. Configuration menu
    Copy the full SHA
    544315b View commit details
    Browse the repository at this point in the history
  53. [ORC] Add deprecation warnings to ORCv1 layers and utilities.

    Summary:
    ORCv1 is deprecated. The current aim is to remove it before the LLVM 10.0
    release. This patch adds deprecation attributes to the ORCv1 layers and
    utilities to warn clients of the change.
    
    Reviewers: dblaikie, sgraenitz, AlexDenisov
    
    Subscribers: llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64609
    
    llvm-svn: 366344
    lhames committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    1716454 View commit details
    Browse the repository at this point in the history
  54. [NativePDB] Add a FromCompilerDecl for going from lldb -> clang

    Summary:
    A common transformation in NativePDB is to go from lldb types to clang
    types and vice versa. This function automates one of those steps.
    
    Differential Revision: https://reviews.llvm.org/D64851
    
    llvm-svn: 366345
    lanza committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    3b96ebe View commit details
    Browse the repository at this point in the history
  55. [CMake] Move standalone check so we don't have to reconfigure LLDB

    By moving the standalone check into the main CMake file, the whole file
    is ignored in a regular (non-standalone) build. This means that you can
    make changes to LLDBStandalone.cmake without having to reconfigure a
    build in a different directory. This matters when you share one source
    repository with different build directories (e.g. release-assert, debug,
    standalone).
    
    Differential revision: https://reviews.llvm.org/D64824
    
    llvm-svn: 366346
    JDevlieghere committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    7f24757 View commit details
    Browse the repository at this point in the history
  56. [lldb] Make log for ClangModulesDeclVendor's compiler flag less verbose

    Summary:
    Currently the ClangModulesDeclVendor is spamming the expression log with the compiler flags it is using, which creates a log that looks like this:
    
    ```
    clang
    
     -fmodules
    
     -fimplicit-module-maps
    ```
    
    This patch removes all these newlines and just prints the compiler flags in one line as you see in the command line:
    
    ```
    clang -fmodules -fimplicit-module-maps [...]
    ```
    
    Reviewers: shafik, davide
    
    Reviewed By: davide
    
    Subscribers: davide, abidh, lldb-commits
    
    Tags: #lldb
    
    Differential Revision: https://reviews.llvm.org/D64858
    
    llvm-svn: 366347
    Teemperor committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    3fce6b5 View commit details
    Browse the repository at this point in the history
  57. [AMDGPU] Tune inlining parameters for AMDGPU target

    Summary:
    Since the target has no significant advantage of vectorization,
    vector instructions bous threshold bonus should be optional.
    
    amdgpu-inline-arg-alloca-cost parameter default value and the target
    InliningThresholdMultiplier value tuned then respectively.
    
    Reviewers: arsenm, rampitec
    
    Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, eraman, hiraditya, haicheng, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64642
    
    llvm-svn: 366348
    dfukalov committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    d912a9b View commit details
    Browse the repository at this point in the history
  58. [OPENMP] Resolve lost LoopTripCnt for subsequent loops in same thread.

    Remove loopTripCnt from threaded device stack after consuming it.
    Added a libomptarget DP message to aid in future debugging and to
    validate the added testcase, which only runs in Debug build.
    
    Differential Revision: https://reviews.llvm.org/D64808
    
    llvm-svn: 366349
    ronlieb committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    5953248 View commit details
    Browse the repository at this point in the history
  59. [CMake] Avoid liblldb genex when figuring out the copy destination fo…

    …r framework tools
    
    This genex created an order-only dependency to liblldb for every framework tool. It reduced build throughput in the first half of the compilation and pulled in unnecessary build units, e.g. debugserver required ~900 build units. With this change debugserver is (again) down at 52 build units!
    
    llvm-svn: 366350
    weliveindetail committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    ee24b40 View commit details
    Browse the repository at this point in the history
  60. [Docs][OpenCL] Documentation of C++ for OpenCL mode

    Added documentation of C++ for OpenCL mode into Clang
    User Manual and Language Extensions document.
    
    Differential Revision: https://reviews.llvm.org/D64418
    
    llvm-svn: 366351
    Anastasia Stulova committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    79f4e47 View commit details
    Browse the repository at this point in the history
  61. [Test] Add module cache for TestWeakSymbols

    Explicitly set the module cache in the Makefile with
    -fmodules-cache-path.
    
    llvm-svn: 366352
    JDevlieghere committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    dce1954 View commit details
    Browse the repository at this point in the history
  62. [clang-tidy] Fix crash on end location inside macro

    Summary:
    Lexer::getLocForEndOfToken is defined to return an
    invalid location if the given location is inside a macro.
    Other checks conditionally warn based off location
    validity. Updating this check to do the same.
    
    Reviewers: JonasToth, aaron.ballman, nickdesaulniers
    
    Reviewed By: nickdesaulniers
    
    Subscribers: lebedev.ri, nickdesaulniers, xazax.hun, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64607
    
    llvm-svn: 366353
    nhukc committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    b53e13c View commit details
    Browse the repository at this point in the history
  63. [clang-tidy] Exclude forward decls from fuchsia-multiple-inheritance

    Addresses b39770.
    
    Differential Revision: https://reviews.llvm.org/D64813
    
    llvm-svn: 366354
    Julie Hockett committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    337aea4 View commit details
    Browse the repository at this point in the history
  64. Revert [AArch64] Add support for Transactional Memory Extension (TME)

    This reverts r366322 (git commit 4b8da3a)
    
    llvm-svn: 366355
    momchil-velikov committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    0e2b74a View commit details
    Browse the repository at this point in the history
  65. [dotest] Disable color while testing.

    Disable colors so we don't risk having unexpected ANSI codes in the test
    output. Currently, the behavior of a test can change depending on
    whether it's run under a color-supporting terminal, or under a dummy
    terminal, for example when using lit or multiprocessing.
    
    llvm-svn: 366356
    JDevlieghere committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    f90d3df View commit details
    Browse the repository at this point in the history
  66. [OPENMP]Fix PR42632: crash on the analysis of the OpenMP constructs.

    Fixed processing of the CapturedStmt children to fix the crash of the
    OpenMP constructs during analysis.
    
    llvm-svn: 366357
    alexey-bataev committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    48f5a43 View commit details
    Browse the repository at this point in the history
  67. [lld][WebAssembly] Fix handling of comdat functions in init array.

    When hidden symbols are discarded by comdat rules we still want to
    create a local defined symbol, otherwise `Symbol::isDiscarded()` relies
    on begin able to check `getChunk->discarded`.
    
    This is a followup on rL362769. The comdat.ll test was previously GC'ing
    the `__wasm_call_ctors` functions so `do_init` was not actually being
    included in the link.  Once that function was included in triggered the
    crash bug that this change addresses.
    
    Fixes: emscripten-core/emscripten#8981
    
    Differential Revision: https://reviews.llvm.org/D64872
    
    llvm-svn: 366358
    sbc100 committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    accad76 View commit details
    Browse the repository at this point in the history
  68. [libc++] XFAIL a test that does not behave properly on older Clang

    rdar://53015486
    
    llvm-svn: 366359
    ldionne committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    66412df View commit details
    Browse the repository at this point in the history
  69. Basic codegen for MTE stack tagging.

    Implement IR intrinsics for stack tagging. Generated code is very
    unoptimized for now.
    
    Two special intrinsics, llvm.aarch64.irg.sp and llvm.aarch64.tagp are
    used to implement a tagged stack frame pointer in a virtual register.
    
    Differential Revision: https://reviews.llvm.org/D64172
    
    llvm-svn: 366360
    eugenis committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    d752f5e View commit details
    Browse the repository at this point in the history
  70. Basic MTE stack tagging instrumentation.

    Summary:
    Use MTE intrinsics to tag stack variables in functions with
    sanitize_memtag attribute.
    
    Reviewers: pcc, vitalybuka, hctim, ostannard
    
    Subscribers: srhines, mgorny, javed.absar, hiraditya, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64173
    
    llvm-svn: 366361
    eugenis committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    851339f View commit details
    Browse the repository at this point in the history
  71. [CMake] Use LLVM_DIR and Clang_DIR for standalone builds.

    When doing a standalone build, without setting LLDB_PATH_TO_LLVM_BUILD
    or LLDB_PATH_TO_CLANG_BUILD, you get the following error.
    
    ```
    CMake Error at cmake/modules/LLDBStandalone.cmake:23 (find_package):
      Could not find a package configuration file provided by "LLVM" with any of
      the following names:
    
        LLVMConfig.cmake
        llvm-config.cmake
    
      Add the installation prefix of "LLVM" to CMAKE_PREFIX_PATH or set
      "LLVM_DIR" to a directory containing one of the above files.  If "LLVM"
      provides a separate development package or SDK, be sure it has been
      installed.
    ```
    
    This suggests setting LLVM_DIR to LLVM's install directory. However,
    LLDBStandalone.cmake takes LLDB_PATH_TO_LLVM_BUILD as its hint. As
    someone who isn't familiar with the standalone process, this is rather
    confusing. This patch removes LLDB_PATH_TO_LLVM_BUILD and
    LLDB_PATH_TO_CLANG_BUILD and instead use LLVM_DIR and Clang_DIR
    respectively.
    
    Differential revision: https://reviews.llvm.org/D64823
    
    llvm-svn: 366362
    JDevlieghere committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    ca12cb9 View commit details
    Browse the repository at this point in the history
  72. [CMake] Remove duplicated logic to find Python when doing a standalon…

    …e build
    
    I'm pretty sure there's no need to have this logic living in
    LLDBStandalone. It doesn't appear anything in LLVM depends on this, and
    We always go through LLDBConfig.cmake which has the canonical way to
    find the Python libs and interpreter for LLDB.
    
    Differential revision: https://reviews.llvm.org/D64821
    
    llvm-svn: 366363
    JDevlieghere committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    e37750b View commit details
    Browse the repository at this point in the history
  73. [docs] Adjust variable formatting table

    While the in-place hints on valid formats are up to date (e.g. when
    choosing an invalid format expr -f nonExisting -- 42), the corresponding
    online docs table is not. The formats "address", "hex float",
    "instruction" and "void" are missing, and "decimal" refers to an
    outdated abbreviation 'i' instead of 'd'.
    
    Patch by: Lukas Böger
    
    Differential revision: https://reviews.llvm.org/D63813
    
    llvm-svn: 366364
    JDevlieghere committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    c2cd84b View commit details
    Browse the repository at this point in the history
  74. Fix CreateFunctionTemplateSpecialization to prevent dangling poiner t…

    …o stack memory
    
    In ClangASTContext::CreateFunctionTemplateSpecializationInfo a TemplateArgumentList is allocated on the stack but is treated as if it is persistent in subsequent calls. When we exit the function func_decl will still point to the stack allocated memory. We will use TemplateArgumentList::CreateCopy instead which will allocate memory out of the DeclContext.
    
    Differential Revision: https://reviews.llvm.org/D64777
    
    llvm-svn: 366365
    shafik committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    a0858e2 View commit details
    Browse the repository at this point in the history
  75. GlobalISel: Handle more cases for widenScalar of G_MERGE_VALUES

    Use an anyext to the requested type for the leftover operand to
    produce a slightly wider type, and then truncate the final merge.
    
    I have another implementation almost ready which handles arbitrary
    widens, but I think it produces worse code in this example (which I
    think is 90% due to not folding redundant copies or folding out
    implicit_def users), so I wanted to add this as a baseline first.
    
    llvm-svn: 366366
    arsenm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    914a59c View commit details
    Browse the repository at this point in the history
  76. GlobalISel: Handle widenScalar of arbitrary G_MERGE_VALUES sources

    Extract the sources to the GCD of the original size and target size,
    padding with implicit_def as necessary.
    
    Also fix the case where the requested source type is wider than the
    original result type. This was ignoring the type, and just using the
    destination. Do the operation in the requested type and truncate back.
    
    llvm-svn: 366367
    arsenm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    0966dd0 View commit details
    Browse the repository at this point in the history
  77. Renamed and changed the wording of warn_cconv_ignored

    As discussed in D64780 the wording of this warning message is being
    changed to say 'is not supported' instead of 'ignored', and the
    diag ID itself is being changed to warn_cconv_not_supported.
    
    llvm-svn: 366368
    Sunil Srivastava committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    85d667f View commit details
    Browse the repository at this point in the history
  78. [CodeGen][NFC] Simplify checks for stack protector index checking

    Use `hasStackProtectorIndex()` instead of `getStackProtectorIndex() >=
    0`.
    
    llvm-svn: 366369
    francisvm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    90ba54b View commit details
    Browse the repository at this point in the history
  79. [CodeGen] Add stack protector tests where the guard gets re-assigned

    In preparation of a fix, add tests for multiple backends.
    
    llvm-svn: 366370
    francisvm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    39fc284 View commit details
    Browse the repository at this point in the history
  80. [PEI] Don't re-allocate a pre-allocated stack protector slot

    The LocalStackSlotPass pre-allocates a stack protector and makes sure
    that it comes before the local variables on the stack.
    
    We need to make sure that later during PEI we don't re-allocate a new
    stack protector slot. If that happens, the new stack protector slot will
    end up being **after** the local variables that it should be protecting.
    
    Therefore, we would have two slots assigned for two different stack
    protectors, one at the top of the stack, and one at the bottom. Since
    PEI will overwrite the assigned slot for the stack protector, the load
    that is used to compare the value of the stack protector will use the
    slot assigned by PEI, which is wrong.
    
    For this, we need to check if the object is pre-allocated, and re-use
    that pre-allocated slot.
    
    Differential Revision: https://reviews.llvm.org/D64757
    
    llvm-svn: 366371
    francisvm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    9f2b290 View commit details
    Browse the repository at this point in the history
  81. Adding inline comments to code view type record directives for better…

    … readability
    
    llvm-svn: 366372
    nilanjana87 committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    6e40766 View commit details
    Browse the repository at this point in the history
  82. [Attributor][NFC] Remove unnecessary debug output

    llvm-svn: 366373
    uenoku committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    4a09a73 View commit details
    Browse the repository at this point in the history
  83. [NFC][ScopBuilder]Move finalizeAccesses and its callees to ScopBuilder

    Scope of changes:
    1) Moved finalizeAccesses to ScopBuilder
    2) Moved updateAccessDimensionality to ScopBuilder
    3) Moved foldSizeConstantsToRight to ScopBuilder
    4) Moved foldSizeConstantsToRight to ScopBuilder
    5) Moved assumeNoOutOfBounds to ScopBuilder
    6) Moved markFortranArrays to ScopBuilder
    7) Added iterator range for AccessFunctions vector.
    
    Differential Revision: https://reviews.llvm.org/D63794
    
    llvm-svn: 366374
    DominikAdamski committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    eece5a9 View commit details
    Browse the repository at this point in the history
  84. Speculative fix for stack-tagging.ll failure.

    Depending on the evaluation order of function call arguments,
    the current code may insert a use before def.
    
    llvm-svn: 366375
    eugenis committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    f45fd42 View commit details
    Browse the repository at this point in the history
  85. [AMDGPU] Stop special casing flat_scratch for register name

    Differential Revision: https://reviews.llvm.org/D64885
    
    llvm-svn: 366376
    rampitec committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    9c7f426 View commit details
    Browse the repository at this point in the history
  86. [NFC][ScopBuilder] Move buildSchedule and its callees to ScopBuilder …

    …or ScopHelper
    
    Scope of changes:
    1. Moved buildSchedule functions to ScopBuilder.
    2. Moved combineInSequence function to ScopBuilder.
    3. Moved mapToDimension function to ScopBuilder.
    4. Moved LoopStackTy to ScopBuilder.
    5. Moved getLoopSurroundingScop to ScopHelper.
    6. Moved getNumBlocksInLoop to ScopHelper.
    7. Moved getNumBlocksInRegionNode to ScopHelper.
    8. Moved getRegionNodeLoop to ScopHelper.
    
    Differential Revision: https://reviews.llvm.org/D64223
    
    llvm-svn: 366377
    DominikAdamski committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    d0ac007 View commit details
    Browse the repository at this point in the history
  87. Add support to ProcessMachCore::DoLoadCore to handle an EFI UUID str.

    If a core file has an EFI version string which includes a UUID
    (similar to what it returns for the kdp KDP_KERNELVERSION packet)
    in the LC_IDENT or LC_NOTE 'kern ver str' load command.  In that
    case, we should try to find the binary and dSYM for the UUID
    listed.  The dSYM may have python code which knows how to relocate
    the binary to the correct address in lldb's target section load
    list and loads other ancillary binaries.
    
    The test case is a little involved,
    
    1. it compiles an inferior hello world apple (a.out),
    2. it compiles a program which can create a corefile manually
       with a specific binary's UUID encoded in it,
    3. it gets the UUID of the a.out binary,
    4. it creates a shell script, dsym-for-uuid.sh, which will
       return the full path to the a.out + a.out.dSYM when called
       with teh correct UUID,
    5. it sets the LLDB_APPLE_DSYMFORUUID_EXECUTABLE env var before
       creating the lldb target, to point to this dsym-for-uuid.sh,
    6. runs the create-corefile binary we compiled in step rust-lang#2,
    7. loads the corefile from step rust-lang#6 into lldb,
    8. verifies that lldb loaded a.out by reading the LC_NOTE
       load command from the corefile, calling dsym-for-uuid.sh with
       that UUID, got back the path to a.out and loaded it.
    
    whew!
    
    <rdar://problem/47562911>
    
    llvm-svn: 366378
    jasonmolenda committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    be4be61 View commit details
    Browse the repository at this point in the history
  88. hwasan: Initialize the pass only once.

    This will let us instrument globals during initialization. This required
    making the new PM pass a module pass, which should still provide access to
    analyses via the ModuleAnalysisManager.
    
    Differential Revision: https://reviews.llvm.org/D64843
    
    llvm-svn: 366379
    pcc committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    3b82b92 View commit details
    Browse the repository at this point in the history
  89. gn build: Merge r366361.

    llvm-svn: 366380
    pcc committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    0dd40a7 View commit details
    Browse the repository at this point in the history
  90. Ah, forgot a debug line I left in the dsym-for-uuid.sh script

    to make sure it was correctly being disabled after this test
    case completed.
    
    llvm-svn: 366381
    jasonmolenda committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    1375659 View commit details
    Browse the repository at this point in the history
  91. [X86] Make sure we mark 128/256 MLOAD as Legal with VLX when min-lega…

    …l-vector-width=256 is in effect.
    
    This started triggering an assertion after r364718 when we made
    these Custom under AVX2.
    
    llvm-svn: 366382
    topperc committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    61fff7a View commit details
    Browse the repository at this point in the history
  92. Configuration menu
    Copy the full SHA
    3628a8f View commit details
    Browse the repository at this point in the history
  93. AMDGPU: Set inaccessiblememonly on sendmsg intrinsics

    llvm-svn: 366384
    arsenm committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    ed9a91c View commit details
    Browse the repository at this point in the history
  94. [AMDGPU] Simplify AMDGPUInstPrinter::printRegOperand()

    Differential Revision: https://reviews.llvm.org/D64892
    
    llvm-svn: 366385
    rampitec committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    7872d76 View commit details
    Browse the repository at this point in the history
  95. llvm-pdbdump: Fix several smaller issues with injected source compres…

    …sion handling
    
    - getCompression() used to return a PDB_SourceCompression even though
      the docs for IDiaInjectedSource are explicit about the return value
      being compiler-dependent. Return an uint32_t instead, and make the
      printing code handle unknown values better by printing "Unknown" and
      the int value instead of not printing any compression.
    
    - Print compressed contents as hex dump, not as string.
    
    - Add compression type "DotNet", which is used (at least) by csc.exe,
      the C# compiler. Also add a lengthy comment describing the stream
      contents (derived from looking at the raw hex contents long enough
      to see the GUIDs, which led me to the roslyn and mono implementations
      for handling this).
    
    - The native injected source dumper was dumping the contents of the
      whole data stream -- but csc.exe writes a stream that's padded with
      zero bytes to the next 512 boundary, and the dia api doesn't display
      those padding bytes. So make NativeInjectedSource::getCode() do the
      same thing.
    
    Differential Revision: https://reviews.llvm.org/D64879
    
    llvm-svn: 366386
    nico committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    7bb5fc0 View commit details
    Browse the repository at this point in the history
  96. [llvm-bcanalyzer] Fixed error 'Expected<T> must be checked before acc…

    …ess or destruction'
    
    After rL365286 I had failing test:
      LLVM :: tools/gold/X86/v1.12/thinlto_emit_linked_objects.ll
    
    It was failing with the output:
    $ llvm-bcanalyzer --dump llvm/test/tools/gold/X86/v1.12/Output/thinlto_emit_linked_objects.ll.tmp3.o.thinlto.bc
    Expected<T> must be checked before access or destruction.
    Unchecked Expected<T> contained error:
    Unexpected end of file reading 0 of 0 bytesStack dump:
    
    Change-Id: I07e03262074ea5e0aae7a8d787d5487c87f914a2
    llvm-svn: 366387
    DenisBakhvalov committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    3eab481 View commit details
    Browse the repository at this point in the history
  97. Make DT a transitive dependency of LI.

    Summary:
    LoopInfoWrapperPass::verify uses DT, which means DT must be alive
    even if it has no direct users.
    
    Fixes a crash in expensive checks mode.
    
    Reviewers: pcc, leonardchan
    
    Subscribers: hiraditya, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64896
    
    llvm-svn: 366388
    eugenis committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    6abd78c View commit details
    Browse the repository at this point in the history
  98. hwasan: Use C++ driver for cfi.cc test.

    It turns out that this test was only passing by accident. It was relying on
    the optimizer to remove the only reference to A's vtable by realizing that
    the CFI check will always fail. The vtable contains a reference to RTTI in
    libc++, which will be unresolved because the C driver won't link against it.
    
    This was found by my prototype implementation of HWASAN for globals, which
    happens to end up preserving the reference.
    
    Differential Revision: https://reviews.llvm.org/D64890
    
    llvm-svn: 366389
    pcc committed Jul 17, 2019
    Configuration menu
    Copy the full SHA
    749f556 View commit details
    Browse the repository at this point in the history
  99. Configuration menu
    Copy the full SHA
    4e22770 View commit details
    Browse the repository at this point in the history

Commits on Jul 18, 2019

  1. [analyzer] MallocChecker: Prevent Integer Set Library false positives

    Summary:
    Integer Set Library using retain-count based allocation which is not
    modeled in MallocChecker.
    
    Reviewed By: NoQ
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64680
    
    llvm-svn: 366391
    Csaba Dabis committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    6898332 View commit details
    Browse the repository at this point in the history
  2. [cmake] Add NATIVE build for cross compiling standalone builds

    TableGen is a host tool and requires a native variant for every build.
    While building as a part of llvm this is trivial and llvm handles it.
    However, building standalone means that lldb has to handle this itself.
    Add a NATIVE build variant to enable this.
    
    llvm-svn: 366392
    lanza committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    0c6ad3d View commit details
    Browse the repository at this point in the history
  3. [Tests] Add a test showing how we handle overaligned allocas w/ no-re…

    …align-stack
    
    (At the moment, we ignore the alignment requirement.)
    
    llvm-svn: 366393
    preames committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    9cdd215 View commit details
    Browse the repository at this point in the history
  4. Only build lldb-tblgen if it's not a current target

    Summary:
    When doing standalone builds, you could potentially be building against
    an llvm which also built lldb. If this were the case, you'd be
    attempting to build this target twice.
    
    Reviewers: xiaobai
    
    Subscribers: mgorny
    
    Differential Revision: https://reviews.llvm.org/D64847
    
    llvm-svn: 366394
    lanza committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    bd3e74c View commit details
    Browse the repository at this point in the history
  5. [AArch64] Add dependency from AArch64CodeGen to TransformUtils to fix…

    … -DBUILD_SHARED_LIBS=on link error after D64173/r366361
    
    This fixes:
    
    ld.lld: error: undefined symbol: llvm::findAllocaForValue(llvm::Value*, llvm::DenseMap<llvm::Value*, llvm::Alloc aInst*, llvm::DenseMapInfo<llvm::Value*>, llvm::detail::DenseMapPair<llvm::Value*, llvm::AllocaInst*> >&)
    >>> referenced by AArch64StackTagging.cpp
    
    llvm-svn: 366396
    MaskRay committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    f358cf8 View commit details
    Browse the repository at this point in the history
  6. [RISCV] Don't acccess an invalidated iterator in RISCVInstrInfo::remo…

    …veBranch
    
    Issue found by ASan.
    
    llvm-svn: 366397
    asb committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    ad73a43 View commit details
    Browse the repository at this point in the history
  7. [RISCV] Avoid signed integer overflow UB in RISCVMatInt::generateInstSeq

    Found by UBSan.
    
    llvm-svn: 366398
    asb committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    8aba95d View commit details
    Browse the repository at this point in the history
  8. [RISCV] Re-land r366331 d RISCV to LLVM_ALL_TARGETS

    *San flagged issues should be now be addressed.
    
    llvm-svn: 366399
    asb committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    4e8d07f View commit details
    Browse the repository at this point in the history
  9. [clangd] Fix Fix -Wunused-lambda-capture after r366339

    llvm-svn: 366400
    MaskRay committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    ceeda9f View commit details
    Browse the repository at this point in the history
  10. [ELF][test] Merge/rename some basic*.s tests

    basic64be.s is a big-endian powerpc64 test that just duplicates what
    basic-ppc64.s does. Extend basic-ppc64.s to add big-endian tests.
    Delete basic64be.s
    
    Rename basic32.s to basic-i386.s
    
    llvm-svn: 366401
    MaskRay committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    1d5cbb7 View commit details
    Browse the repository at this point in the history
  11. [DWARF][RISCV] Add support for RISC-V relocations needed for debug info

    When code relaxation is enabled many RISC-V fixups are not resolved but
    instead relocations are emitted. This happens even for DWARF debug
    sections. Therefore, to properly support the parsing of DWARF debug info
    we need to be able to resolve RISC-V relocations. This patch adds:
    
    * Support for RISC-V relocations in RelocationResolver
    * DWARF support for two relocations per object file offset
    * DWARF changes to support relocations in more DIE fields
    
    The two relocations per offset change is needed because some RISC-V
    relocations (used for label differences) come in pairs.
    
    Relocations can also be emitted for DWARF fields where relocations were
    not yet evaluated. Adding relocation support for some of these fields is
    essencial. On the other hand, LLVM currently emits RISC-V relocations
    for fixups that could be safely evaluated, since they can never be
    affected by code relaxations. This patch also adds relocation support
    for the fields affected by those extraneous relocations (the DWARF unit
    entry Length, and the DWARF debug line entry TotalLength and
    PrologueLength), for testing purposes.
    
    Differential Revision: https://reviews.llvm.org/D62062
    Patch by Luís Marques.
    
    llvm-svn: 366402
    asb committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    44deaf7 View commit details
    Browse the repository at this point in the history
  12. Fix typo in programmer's manual cantFile -> cantFail

    llvm-svn: 366403
    lanza committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    4f93b8b View commit details
    Browse the repository at this point in the history
  13. [X86] Disable combineConcatVectors for vXi1 vectors.

    I'm not convinced the code this calls is properly vetted for
    vXi1 vectors. Experimental vector widening legalization testing
    for D55251 is now hitting an assertion failure inside
    EltsFromConsecutiveLoads. This is occurring from a v2i1 load
    having a store size different than its VT size. Hopefully
    this commit will keep such issues from happening.
    
    llvm-svn: 366405
    topperc committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    8da0402 View commit details
    Browse the repository at this point in the history
  14. [PowerPC][Clang] Remove use of malloc in mm_malloc

    Remove dependency of malloc in implementation of mm_malloc function in PowerPC
    intrinsics and alignment assumption on glibc.
    
    Reviewed By: Hal Finkel
    
    Differential Revision: https://reviews.llvm.org/D64850
    
    llvm-svn: 366406
    ecnelises committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    03aaef8 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    33a4336 View commit details
    Browse the repository at this point in the history
  16. clang-tidy release notes: Split and order changes by type

    Patch by Eugene Zelenko!
    
    llvm-svn: 366408
    zmodem committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    5dd86ab View commit details
    Browse the repository at this point in the history
  17. [CodeComplete] Fix ASTUnit cached completion of macros from preamble,…

    … broken in r342528
    
    Summary:
    The problem is the default LoadExternal with no completer, which happens when
    loading global results.
    
    Reviewers: ilya-biryukov, nik
    
    Subscribers: arphaman, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64864
    
    llvm-svn: 366409
    sam-mccall committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    36082e3 View commit details
    Browse the repository at this point in the history
  18. [RISCV][DebugInfo] Fix dwarf-riscv-relocs.ll test on Windows

    Windows sees DW_AT_decl_file (".\dwarf-riscv-relocs.c") while Linux sees
    DW_AT_decl_file ("./dwarf-riscv-relocs.c").
    
    This fixes a failure introduced in rL366402.
    
    llvm-svn: 366410
    asb committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    dad1beb View commit details
    Browse the repository at this point in the history
  19. [LoopInfo] Use early return in branch weight update functions. NFC.

    llvm-svn: 366411
    Serguei Katkov committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    0ffa833 View commit details
    Browse the repository at this point in the history
  20. [RISCV] Reset NoPHIS MachineFunctionProperty in emitSelectPseudo

    We insered PHIS were there were none before, so the property must be
    reset. This error was found on an EXPENSIVE_CHECKS build.
    
    llvm-svn: 366412
    asb committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    b8d352a View commit details
    Browse the repository at this point in the history
  21. Fix asan infinite loop on undefined symbol

    Fix llvm#39641
    
    Differential Revision: https://reviews.llvm.org/D63877
    
    llvm-svn: 366413
    Serge Guelton committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    6371911 View commit details
    Browse the repository at this point in the history
  22. [lldb] Don't double emit option groups

    We currently emit the option groups twice if Groups<[1,2,3]> is
    used in the tablegen. This leads to compilation errors. This
    patch just removes the line that accidentially emits the option
    group a second time.
    
    llvm-svn: 366414
    Teemperor committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    ce8df1f View commit details
    Browse the repository at this point in the history
  23. [lldb][NFC] Tablegenify type commands

    llvm-svn: 366415
    Teemperor committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    beadf7d View commit details
    Browse the repository at this point in the history
  24. Fixup r366333 (require x86 in test)

    Seems to be required for the other added tests too.
    
    llvm-svn: 366416
    rovka committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    f26706f View commit details
    Browse the repository at this point in the history
  25. [OpenCL][PR42033] Fix addr space deduction with template parameters

    If dependent types appear in pointers or references we allow addr
    space deduction because the addr space in template argument will
    belong to the pointee and not the pointer or reference itself.
    
    We also don't diagnose addr space on a function return type after
    template instantiation. If any addr space for the return type was
    provided on a template parameter this will be diagnosed during the
    parsing of template definition.
    
    Differential Revision: https://reviews.llvm.org/D62584
    
    llvm-svn: 366417
    Anastasia Stulova committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    36d9e83 View commit details
    Browse the repository at this point in the history
  26. [lld] Fix vs-diagnostics-version-script test. NFC.

    Removed unnecessary llvm-mc call.
    
    llvm-svn: 366418
    Chris Jackson committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    0b03429 View commit details
    Browse the repository at this point in the history
  27. [SCEV] add no wrap flag for SCEVAddExpr.

    Differential Revision: https://reviews.llvm.org/D64868
    
    llvm-svn: 366419
    Chen Zheng committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    c38e3ef View commit details
    Browse the repository at this point in the history
  28. [clangd] Added highlightings for template parameters and specializati…

    …ons.
    
    Summary: Template parameters and specializations were not being highlighted before. This adds highlightings to those types of tokens by adding two Visit* methods.
    
    Reviewers: hokein, sammccall, ilya-biryukov
    
    Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64855
    
    llvm-svn: 366420
    jvikstrom committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    51cdd51 View commit details
    Browse the repository at this point in the history
  29. [OpenCL] Update comments/diagnostics to refer to C++ for OpenCL

    Clang doesn't implement OpenCL C++, change the comments to
    reflect that.
    
    Differential Revision: https://reviews.llvm.org/D64867
    
    llvm-svn: 366421
    Anastasia Stulova committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    46b55fa View commit details
    Browse the repository at this point in the history
  30. [OpenCL] Improve destructor support in C++ for OpenCL

    Summary:
    This patch does mainly three things:
     1. It fixes a false positive error detection in Sema that is similar to
        D62156. The error happens when explicitly calling an overloaded
        destructor for different address spaces.
     2. It selects the correct destructor when multiple overloads for
        address spaces are available.
     3. It inserts the expected address space cast when invoking a
        destructor, if needed, and therefore fixes a crash due to the unmet
        assertion in llvm::CastInst::Create.
    
    The following is a reproducer of the three issues:
    
        struct MyType {
          ~MyType() {}
          ~MyType() __constant {}
        };
    
        __constant MyType myGlobal{};
    
        kernel void foo() {
          myGlobal.~MyType(); // 1 and 2.
          // 1. error: cannot initialize object parameter of type
          //    '__generic MyType' with an expression of type '__constant MyType'
          // 2. error: no matching member function for call to '~MyType'
        }
    
        kernel void bar() {
          // 3. The implicit call to the destructor crashes due to:
          //    Assertion `castIsValid(op, S, Ty) && "Invalid cast!"' failed.
          //    in llvm::CastInst::Create.
          MyType myLocal;
        }
    
    The added test depends on D62413 and covers a few more things than the
    above reproducer.
    
    Subscribers: yaxunl, Anastasia, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D64569
    
    llvm-svn: 366422
    mantognini committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    83748cc View commit details
    Browse the repository at this point in the history
  31. [ARM][DAGCOMBINE][FIX] PerformVMOVRRDCombine

    Summary:
    PerformVMOVRRDCombine ommits adding a offset
    of 4 to the PointerInfo, when converting a
    f64 = load[M]
    to
    {i32, i32} = {load[M], load[M + 4]}
    
    Which would allow the machine scheduller
    to break dependencies with the second load.
    
     - pr42638
    
    Reviewers: eli.friedman, dmgreen, ostannard
    
    Reviewed By: ostannard
    
    Subscribers: ostannard, javed.absar, kristof.beyls, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D64870
    
    llvm-svn: 366423
    Diogo N. Sampaio committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    11512e7 View commit details
    Browse the repository at this point in the history
  32. [ELF][PPC] Refactor some ppc64 tests

    Merge ppc64-dynamic-relocations.s into ppc64-plt-stub.s
    Add ppc64-tls-ie.s: covers ppc64-initial-exec-tls.s and ppc64-tls-ie-le.s
    Add ppc64-tls-gd.s: covers ppc64-general-dynamic-tls.s, ppc64-gd-to-ie.s, ppc64-tls-gd-le.s, and ppc64-tls-gd-le-small.s
    
    llvm-svn: 366424
    MaskRay committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    7823902 View commit details
    Browse the repository at this point in the history
  33. [lldb] Tablegenify thread commands and fix completion bug for thread …

    …step-*
    
    Beside turning the options into the new tablegen format, this patch
    also fixes that a few commands had source file completions for the
    "count" and "end-linenumber" arguments (which both accepted only
    integers). Reason for that are that somehow we added a '1' instead
    of our usual '0' value to the initial value for completion.
    
    llvm-svn: 366425
    Teemperor committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    0cadf7b View commit details
    Browse the repository at this point in the history
  34. [lldb][NFC] Format 'type' commands in Options.td

    llvm-svn: 366426
    Teemperor committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    c89a3d7 View commit details
    Browse the repository at this point in the history
  35. Creating release_90 branch off revision 366426

    llvm-svn: 366428
    zmodem committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    2cf681a View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2019

  1. Drop svn version suffix.

    llvm-svn: 366547
    zmodem committed Jul 19, 2019
    Configuration menu
    Copy the full SHA
    c02ac09 View commit details
    Browse the repository at this point in the history
  2. Drop svn version suffix.

    llvm-svn: 366548
    zmodem committed Jul 19, 2019
    Configuration menu
    Copy the full SHA
    135370e View commit details
    Browse the repository at this point in the history
  3. Drop svn version suffix.

    llvm-svn: 366549
    zmodem committed Jul 19, 2019
    Configuration menu
    Copy the full SHA
    a4f7f72 View commit details
    Browse the repository at this point in the history
  4. Drop svn version suffix.

    llvm-svn: 366550
    zmodem committed Jul 19, 2019
    Configuration menu
    Copy the full SHA
    24c2e53 View commit details
    Browse the repository at this point in the history
  5. Merging r366429:

    ------------------------------------------------------------------------
    r366429 | ibiryukov | 2019-07-18 13:55:33 +0200 (Thu, 18 Jul 2019) | 5 lines
    
    Revert r366422: [OpenCL] Improve destructor support in C++ for OpenCL
    
    Reason: this commit causes crashes in the clang compiler when building
    LLVM Support with libc++, see https://bugs.llvm.org/show_bug.cgi?id=42665
    for details.
    ------------------------------------------------------------------------
    
    llvm-svn: 366552
    zmodem committed Jul 19, 2019
    Configuration menu
    Copy the full SHA
    eb482e5 View commit details
    Browse the repository at this point in the history
  6. Merging r366433:

    ------------------------------------------------------------------------
    r366433 | stefan.graenitz | 2019-07-18 15:30:37 +0200 (Thu, 18 Jul 2019) | 19 lines
    
    [CMake] Always build debugserver on Darwin and allow tests to use the system's one
    
    Summary:
    We can always build debugserver, but we can't always sign it to be useable for testing. `LLDB_USE_SYSTEM_DEBUGSERVER` should only tell whether or not the system debugserver should be used for testing.
    The old behavior complicated the logic around debugserver a lot. The new logic sorts out most of it.
    
    Please note that this patch is in early stage and needs some more testing. It should not affect platfroms other than Darwin. It builds on Davide's approach to validate the code-signing identity at configuration time.
    
    What do you think?
    
    Reviewers: xiaobai, JDevlieghere, davide, compnerd, friss, labath, mgorny, jasonmolenda
    
    Reviewed By: JDevlieghere
    
    Subscribers: lldb-commits, #lldb
    
    Tags: #lldb
    
    Differential Revision: https://reviews.llvm.org/D64806
    ------------------------------------------------------------------------
    
    llvm-svn: 366553
    zmodem committed Jul 19, 2019
    Configuration menu
    Copy the full SHA
    7c86e5b View commit details
    Browse the repository at this point in the history
  7. Merging r366480:

    ------------------------------------------------------------------------
    r366480 | asb | 2019-07-18 20:29:59 +0200 (Thu, 18 Jul 2019) | 25 lines
    
    [RISCV] Hard float ABI support
    
    The RISC-V hard float calling convention requires the frontend to:
    
    * Detect cases where, once "flattened", a struct can be passed using
    int+fp or fp+fp registers under the hard float ABI and coerce to the
    appropriate type(s)
    * Track usage of GPRs and FPRs in order to gate the above, and to
    determine when signext/zeroext attributes must be added to integer
    scalars
    
    This patch attempts to do this in compliance with the documented ABI,
    and uses ABIArgInfo::CoerceAndExpand in order to do this. @rjmccall, as
    author of that code I've tagged you as reviewer for initial feedback on
    my usage.
    
    Note that a previous version of the ABI indicated that when passing an
    int+fp struct using a GPR+FPR, the int would need to be sign or
    zero-extended appropriately. GCC never did this and the ABI was changed,
    which makes life easier as ABIArgInfo::CoerceAndExpand can't currently
    handle sign/zero-extension attributes.
    
    Re-landed after backing out 366450 due to missed hunks.
    
    Differential Revision: https://reviews.llvm.org/D60456
    ------------------------------------------------------------------------
    
    llvm-svn: 366554
    zmodem committed Jul 19, 2019
    Configuration menu
    Copy the full SHA
    b51b64e View commit details
    Browse the repository at this point in the history
  8. Merging r366511:

    ------------------------------------------------------------------------
    r366511 | lhames | 2019-07-19 00:47:18 +0200 (Fri, 19 Jul 2019) | 3 lines
    
    Update the SimpleJIT class in the clang-interpreter example to use ORCv2.
    
    This will remove the ORCv1 deprecation warnings.
    ------------------------------------------------------------------------
    
    llvm-svn: 366556
    zmodem committed Jul 19, 2019
    Configuration menu
    Copy the full SHA
    1931d3c View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    93abf26 View commit details
    Browse the repository at this point in the history