and though bugs are the bane of my existence, rest assured the wretched thing will get the best of care here

  1. 16 May, 2019 3 commits
    • Tom Stellard's avatar
      Merging r355038: · 9124fda0
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r355038 | joerg | 2019-02-27 13:53:14 -0800 (Wed, 27 Feb 2019) | 3 lines
      
      Default to Secure PLT on PPC for NetBSD and OpenBSD.
      This matches the default settings of clang.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360950
      9124fda0
    • Tom Stellard's avatar
      Merging r352806: · 4b1712f7
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r352806 | sbc | 2019-01-31 14:38:22 -0800 (Thu, 31 Jan 2019) | 5 lines
      
      [WebAssembly] MC: Fix for outputing wasm object to /dev/null
      
      Subscribers: dschuff, jgravelle-google, aheejin, sunfish, llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D57479
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360949
      4b1712f7
    • Tom Stellard's avatar
      Merging r360674: · 05288f50
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r360674 | russell_gallop | 2019-05-14 07:01:40 -0700 (Tue, 14 May 2019) | 7 lines
      
      [Driver][Windows] Add dependent lib argument for profile instr generate
      
      This is needed so lld-link can find clang_rt.profile when self hosting
      on Windows with PGO. Using clang-cl as a linker knows to add the library
      but self hosting, using -DCMAKE_LINKER=<...>/lld-link.exe doesn't.
      
      Differential Revision: https://reviews.llvm.org/D61742
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360828
      05288f50
  2. 15 May, 2019 10 commits
    • Tom Stellard's avatar
      Merging r354846: · bc6695ca
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r354846 | djg | 2019-02-25 21:20:19 -0800 (Mon, 25 Feb 2019) | 12 lines
      
      [WebAssembly] Properly align fp128 arguments in outgoing varargs arguments
      
      For outgoing varargs arguments, it's necessary to check the OrigAlign field
      of the corresponding OutputArg entry to determine argument alignment, rather
      than just computing an alignment from the argument value type. This is
      because types like fp128 are split into multiple argument values, with
      narrower types that don't reflect the ABI alignment of the full fp128.
      
      This fixes the printf("printfL: %4.*Lf\n", 2, lval); testcase.
      
      Differential Revision: https://reviews.llvm.org/D58656
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360826
      bc6695ca
    • Tom Stellard's avatar
      Merging r360212: · e58d5a45
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r360212 | kamil | 2019-05-07 17:44:41 -0700 (Tue, 07 May 2019) | 6 lines
      
      Fix build on NetBSD 8.99.38
      
      With recent changes the dev/nvmm/nvmm_ioctl.h header is no longer
      a standalone NVMM header. Disable it until the NVMM operations will
      stabilize and be included in the ioctl(2) interceptors.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360811
      e58d5a45
    • Tom Stellard's avatar
      Merging r355141: · 9916d8de
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r355141 | rnk | 2019-02-28 13:05:41 -0800 (Thu, 28 Feb 2019) | 11 lines
      
      [COFF] Add address-taken import thunks to the fid table
      
      Summary: Fixes PR39799
      
      Reviewers: dmajor, hans
      
      Subscribers: jdoerfert, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D58739
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360803
      9916d8de
    • Tom Stellard's avatar
      Merging r359569: · 35349ba7
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r359569 | russell_gallop | 2019-04-30 08:35:16 -0700 (Tue, 30 Apr 2019) | 7 lines
      
      Add llvm-profdata to LLVM_TOOLCHAIN_TOOLS
      
      This is required for using PGO on Windows but isn't in the Windows
      release packages. Windows packages are built with
      LLVM_INSTALL_TOOLCHAIN_ONLY so only includes llvm "tools" listed here.
      
      Differential Revision: https://reviews.llvm.org/D61317
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360801
      35349ba7
    • Tom Stellard's avatar
      Merging r360099: · 2570e4bb
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r360099 | efriedma | 2019-05-06 16:21:59 -0700 (Mon, 06 May 2019) | 26 lines
      
      [ARM] Glue register copies to tail calls.
      
      This generally follows what other targets do. I don't completely
      understand why the special case for tail calls existed in the first
      place; even when the code was committed in r105413, call lowering didn't
      work in the way described in the comments.
      
      Stack protector lowering breaks if the register copies are not glued to
      a tail call: we have to insert the stack protector check before the tail
      call, and we choose the location based on the assumption that all
      physical register dependencies of a tail call are adjacent to the tail
      call. (See FindSplitPointForStackProtector.) This is sort of fragile,
      but I don't see any reason to break that assumption.
      
      I'm guessing nobody has seen this before just because it's hard to
      convince the scheduler to actually schedule the code in a way that
      breaks; even without the glue, the only computation that could actually
      be scheduled after the register copies is the computation of the call
      address, and the scheduler usually prefers to schedule that before the
      copies anyway.
      
      Fixes https://bugs.llvm.org/show_bug.cgi?id=41417
      
      Differential Revision: https://reviews.llvm.org/D60427
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360793
      2570e4bb
    • Tom Stellard's avatar
      Merging r355621: · 3f38b9eb
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r355621 | petarj | 2019-03-07 10:28:44 -0800 (Thu, 07 Mar 2019) | 5 lines
      
      fix expected format in test/ELF/eh-frame-hdr-augmentation.s
      
      Follow-up for r355605.
      Fix expected format in test/ELF/eh-frame-hdr-augmentation.s
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360792
      3f38b9eb
    • Tom Stellard's avatar
      Merging r358547: · 0eebd31d
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r358547 | ruiu | 2019-04-16 19:12:47 -0700 (Tue, 16 Apr 2019) | 9 lines
      
      Fix a crash bug caused by a nested call of parallelForEach.
      
      parallelForEach is not reentrant. We use parallelForEach to call
      each section's writeTo(), so calling the same function within writeTo()
      is not safe.
      
      Fixes https://bugs.llvm.org/show_bug.cgi?id=41508
      
      Differential Revision: https://reviews.llvm.org/D60757
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360791
      0eebd31d
    • Tom Stellard's avatar
      Merging r359883: · d9ccd0db
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r359883 | arsenm | 2019-05-03 06:42:56 -0700 (Fri, 03 May 2019) | 6 lines
      
      AMDGPU: Fix incorrect commute with sub when folding immediates
      
      When a fold of an immediate into a sub/subrev required shrinking the
      instruction, the wrong VOP2 opcode was used. This was using the VOP2
      equivalent of the original instruction, not the commuted instruction
      with the inverted opcode.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360752
      d9ccd0db
    • Tom Stellard's avatar
      Merging r356982: · 74cfa7ac
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r356982 | mstorsjo | 2019-03-26 02:02:44 -0700 (Tue, 26 Mar 2019) | 12 lines
      
      [llvm-dlltool] Set a proper machine type for weak symbol object files
      
      This makes GNU binutils not reject the libraries outright.
      
      GNU ld handles weak externals slightly differently though, so it
      can't use them for aliases in import libraries, but this makes GNU
      ld able to use the rest of the import libraries.
      
      LLD accepted object files with machine type 0 aka
      IMAGE_FILE_MACHINE_UNKNOWN.
      
      Differential Revision: https://reviews.llvm.org/D59742
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360750
      74cfa7ac
    • Tom Stellard's avatar
      Merging r360512: · 0203f70b
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r360512 | ctopper | 2019-05-10 21:19:33 -0700 (Fri, 10 May 2019) | 5 lines
      
      [X86] Don't emit MOVNTDQA loads from fast-isel without SSE4.1.
      
      We were checking for SSE4.1 for FP types, but not integer 128-bit types.
      
      Fixes PR41837.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 360749
      0203f70b
  3. 04 May, 2019 2 commits
    • Tom Stellard's avatar
      Merging r357885: · 7c1f15e3
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r357885 | ruiu | 2019-04-07 23:45:07 -0700 (Sun, 07 Apr 2019) | 13 lines
      
      Fix -emit-reloc against local symbols.
      
      Previously, we drop symbols starting with .L from the symbol table, so
      if there is a relocation that refers a .L symbol, it ended up
      referencing a null -- which happened to be interpreted as an absolute
      symbol.
      
      This patch copies all symbols including local ones if -emit-reloc is
      given.
      
      Fixes https://bugs.llvm.org/show_bug.cgi?id=41385
      
      Differential Revision: https://reviews.llvm.org/D60306
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 359956
      7c1f15e3
    • Tom Stellard's avatar
      Merging r359496: · 0d754fd0
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r359496 | mstorsjo | 2019-04-29 13:25:51 -0700 (Mon, 29 Apr 2019) | 8 lines
      
      [X86] Run CFIInstrInserter on Windows if Dwarf is used
      
      This is necessary since SVN r330706, as tail merging can include
      CFI instructions since then.
      
      This fixes PR40322 and PR40012.
      
      Differential Revision: https://reviews.llvm.org/D61252
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 359952
      0d754fd0
  4. 03 May, 2019 4 commits
    • Tom Stellard's avatar
      Merging r359834: · 2a5c205c
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r359834 | evandro | 2019-05-02 15:01:39 -0700 (Thu, 02 May 2019) | 3 lines
      
      [AArch64] Update for Exynos
      
      Fix the forwarding of multiplication results for Exynos M4.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 359946
      2a5c205c
    • Tom Stellard's avatar
      Merging r357376 and r359120: · 87c0dbbe
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r357376 | labath | 2019-04-01 01:11:46 -0700 (Mon, 01 Apr 2019) | 27 lines
      
      [Linux/x86] Fix writing of non-gpr registers on newer processors
      
      Summary:
      We're using ptrace(PTRACE_SETREGSET, NT_X86_XSTATE) to write all non-gpt
      registers on x86 linux. Unfortunately, this method has a quirk, where
      the kernel rejects all attempts to write to this area if one supplies a
      buffer which is smaller than the area size (even though the kernel will
      happily accept partial reads from it).
      
      This means that if the CPU supports some new registers/extensions that
      we don't know about (in my case it was the PKRU extension), we will fail
      to write *any* non-gpr registers, even those that we know about.
      
      Since this is a situation that's likely to appear again and again, I add
      code to NativeRegisterContextLinux_x86_64 to detect the runtime size of
      the area, and allocate an appropriate buffer. This does not mean that we
      will start automatically supporting all new extensions, but it does mean
      that the new extensions will not prevent the old ones from working.
      
      This fixes tests attempting to write to non-gpr registers on new intel
      processors (cca Kaby Lake Refresh).
      
      Reviewers: jankratochvil, davezarzycki
      
      Subscribers: lldb-commits
      
      Differential Revision: https://reviews.llvm.org/D59991
      ```
      
      ---------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r359120 | josepht | 2019-04-24 11:00:12 -0700 (Wed, 24 Apr 2019) | 15 lines
      
      [lldb] Use local definition of get_cpuid_count
      
      Summary:
      This is needed for gcc/cstdlib++ 5.4.0, where __get_cpuid_count is not
      defined in cpuid.h.
      
      Reviewers: labath
      
      Reviewed By: labath
      
      Subscribers: lldb-commits
      
      Tags: #lldb
      
      Differential Revision: https://reviews.llvm.org/D61036
      ------------------------------------------------------------------------
      
      llvm-svn: 359945
      87c0dbbe
    • Tom Stellard's avatar
      Merging r357701: · 9465a4c3
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r357701 | mgorny | 2019-04-04 07:21:38 -0700 (Thu, 04 Apr 2019) | 8 lines
      
      [llvm] [cmake] Add additional headers only if they exist
      
      Modify the add_header_files_for_glob() function to only add files
      that do exist, rather than all matches of the glob.  This fixes CMake
      error when one of the include directories (which happen to include
      /usr/include) contain broken symlinks.
      
      Differential Revision: https://reviews.llvm.org/D59632
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 359857
      9465a4c3
    • Tom Stellard's avatar
      Merging r355607: · 68f2f7cc
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r355607 | petarj | 2019-03-07 08:31:08 -0800 (Thu, 07 Mar 2019) | 11 lines
      
      [DebugInfo] Fix the type of the formated variable
      
      Change the format type of *Personality and *LSDAAddress to PRIx64 since
      they are of type uint64_t.
      The problem was detected on mips builds, where it was printing junk values
      and causing test failure.
      
      Patch by Milos Stojanovic.
      
      Differential Revision: https://reviews.llvm.org/D58451
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 359851
      68f2f7cc
  5. 25 Apr, 2019 1 commit
    • Tom Stellard's avatar
      Merging r358885: · 604a4178
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r358885 | grimar | 2019-04-22 06:40:42 -0700 (Mon, 22 Apr 2019) | 8 lines
      
      [LLD][ELF] - Do not forget to use ch_addralign field after decompressing the sections.
      
      LLD did not use ELF::Chdr::ch_addralign for decompressed sections.
      This resulted in a broken output.
      
      Fixes https://bugs.llvm.org/show_bug.cgi?id=40482.
      
      Differential revision: https://reviews.llvm.org/D60959
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 359209
      604a4178
  6. 23 Apr, 2019 2 commits
    • Tom Stellard's avatar
      Merging r357506: · 7aa4dc94
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r357506 | atanasyan | 2019-04-02 11:03:31 -0700 (Tue, 02 Apr 2019) | 7 lines
      
      [driver][mips] Check both `gnuabi64` and `gnu` suffixes in `getMultiarchTriple`
      
      In case of N64 ABI toolchain paths migth have `mips-linux-gnuabi64`
      or `mips-linux-gnu` directory regardless of selected environment.
      Check both variants while detecting a multiarch triple.
      
      Fix for the bug https://bugs.llvm.org/show_bug.cgi?id=41204
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 358947
      7aa4dc94
    • Tom Stellard's avatar
      Merging r356039: · 1ff9bed8
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r356039 | atanasyan | 2019-03-13 04:04:38 -0700 (Wed, 13 Mar 2019) | 11 lines
      
      [MIPS][microMIPS] Fix PseudoMTLOHI_MM matching and expansion
      
      On micromips MipsMTLOHI is always matched to PseudoMTLOHI_DSP regardless
      of +dsp argument. This patch checks is HasDSP predicate is present for
      PseudoMTLOHI_DSP so PseudoMTLOHI_MM can be matched when appropriate.
      
      Add expansion of PseudoMTLOHI_MM instruction into a mtlo/mthi pair.
      
      Patch by Mirko Brkusanin.
      
      Differential Revision: http://reviews.llvm.org/D59203
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 358941
      1ff9bed8
  7. 22 Apr, 2019 6 commits
    • Tom Stellard's avatar
      Merging r355825: · 047302e0
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r355825 | petarj | 2019-03-11 07:13:31 -0700 (Mon, 11 Mar 2019) | 10 lines
      
      [MIPS][microMIPS] Add a pattern to match TruncIntFP
      
      A pattern needed to match TruncIntFP was missing. This was causing multiple
      tests from llvm test suite to fail during compilation for micromips.
      
      Patch by Mirko Brkusanin.
      
      Differential Revision: https://reviews.llvm.org/D58722
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 358936
      047302e0
    • Tom Stellard's avatar
      Merging r354882: · 25b6e82d
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r354882 | atanasyan | 2019-02-26 06:45:17 -0800 (Tue, 26 Feb 2019) | 4 lines
      
      [mips] Emit `.module softfloat` directive
      
      This change fixes crash on an assertion in case of using
      `soft float` ABI for mips32r6 target.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 358934
      25b6e82d
    • Tom Stellard's avatar
      Merging r354808: · 257c0105
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r354808 | nikic | 2019-02-25 10:54:17 -0800 (Mon, 25 Feb 2019) | 11 lines
      
      [Mips] Fix missing masking in fast-isel of br (PR40325)
      
      Fixes https://bugs.llvm.org/show_bug.cgi?id=40325 by zero extending
      (and x, 1) the condition before branching on it.
      
      To avoid regressing trivial cases, I'm combining emission of cmp+br
      sequences for the single-use + same block case (similar to what we
      do in x86). icmpbr1.ll still regresses due to the cross-bb usage
      of the condition.
      
      Differential Revision: https://reviews.llvm.org/D58576
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 358925
      257c0105
    • Tom Stellard's avatar
      Merging r356198: · 1cef8c24
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r356198 | abataev | 2019-03-14 13:36:00 -0700 (Thu, 14 Mar 2019) | 5 lines
      
      [OPENMP]Fix crash for the ordered(n) clause.
      
      If the doacross lop construct is used and the loop counter is declare
      outside of the loop, the compiler might crash trying to get the address
      of the loop counter. Patch fixes this problem.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 358923
      1cef8c24
    • Tom Stellard's avatar
      Merging r354672: · aaac4e0a
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r354672 | petarj | 2019-02-22 06:53:58 -0800 (Fri, 22 Feb 2019) | 13 lines
      
      [mips][micromips] fix filling delay slots for PseudoIndirectBranch_MM
      
      Filling a delay slot in 32bit jump instructions with a 16bit instruction
      can cause issues. According to the documentation such an operation is
      unpredictable.
      This patch adds opcode Mips::PseudoIndirectBranch_MM alongside
      Mips::PseudoIndirectBranch and other instructions that are expanded to jr
      instruction and do not allow a 16bit instruction in their delay slots.
      
      Patch by Mirko Brkusanin.
      
      Differential Revision: https://reviews.llvm.org/D58507
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 358920
      aaac4e0a
    • Tom Stellard's avatar
      Merging r355854: · 79c29c6b
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r355854 | jonpa | 2019-03-11 12:00:37 -0700 (Mon, 11 Mar 2019) | 13 lines
      
      [RegAlloc]  Avoid compile time regression with multiple copy hints.
      
      As a fix for https://bugs.llvm.org/show_bug.cgi?id=40986 ("excessive compile
      time building opencollada"), this patch makes sure that no phys reg is hinted
      more than once from getRegAllocationHints().
      
      This handles the case were many virtual registers are assigned to the same
      physreg. The previous compile time fix (r343686) in weightCalcHelper() only
      made sure that physical/virtual registers are passed no more than once to
      addRegAllocationHint().
      
      Review: Dimitry Andric, Quentin Colombet
      https://reviews.llvm.org/D59201
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 358905
      79c29c6b
  8. 29 Mar, 2019 1 commit
    • Tom Stellard's avatar
      Merging r356924: · 25895ad2
      Tom Stellard authored
      ```---------------------------------------------------------------------
      r356924 | tstellar | 2019-03-25 10:01:29 -0700 (Mon, 25 Mar 2019) | 1 line
      
      merge-request.sh: Update 8.0 metabug for 8.0.1
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 357234
      25895ad2
  9. 21 Mar, 2019 2 commits
  10. 15 Mar, 2019 1 commit
    • Hans Wennborg's avatar
      Re-generate DiagnosticsReference.rst (PR41080) · d2298e74
      Hans Wennborg authored
        $ bin/clang-tblgen -gen-diag-docs -I../cfe.src/include
        -I../cfe.src/include/clang/Basic/
        ../cfe.src/include/clang/Basic/Diagnostic.td -o
        ../cfe.src/docs/DiagnosticsReference.rst
      
      llvm-svn: 356240
      d2298e74
  11. 13 Mar, 2019 2 commits
  12. 12 Mar, 2019 2 commits
    • Hans Wennborg's avatar
      ReleaseNotes: SystemZ, by Ulrich Weigand. · a73e76ab
      Hans Wennborg authored
      llvm-svn: 355916
      a73e76ab
    • Hans Wennborg's avatar
      Merging r355743: · 25292d1c
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r355743 | ericwf | 2019-03-08 23:06:48 +0100 (Fri, 08 Mar 2019) | 26 lines
      
      [8.0 Regression] Fix handling of `__builtin_constant_p` inside template arguments, enumerators, case statements, and the enable_if attribute.
      
      Summary:
      The following code is accepted by Clang 7 and prior but rejected by the upcoming 8 release and in trunk [1]
      
      ```
      // error {{never produces a constant expression}}
      void foo(const char* s) __attribute__((enable_if(__builtin_constant_p(*s) == false, "trap"))) {}
      void test() { foo("abc"); }
      ```
      
      Prior to Clang 8, the call to `__builtin_constant_p` was a constant expression returning false. Currently, it's not a valid constant expression.
      
      The bug is caused because we failed to set `InConstantContext` when attempting to evaluate unevaluated constant expressions.
      
      [1]  https://godbolt.org/z/ksAjmq
      
      Reviewers: rsmith, hans, sbenza
      
      Reviewed By: rsmith
      
      Subscribers: kristina, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D59038
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 355898
      25292d1c
  13. 08 Mar, 2019 4 commits
    • Hans Wennborg's avatar
      Merging r355489: · 60c05513
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r355489 | hans | 2019-03-06 10:38:04 +0100 (Wed, 06 Mar 2019) | 1 line
      
      clang-cl: Parse /Qspectre and a few other missing options (PR40964)
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 355677
      60c05513
    • Hans Wennborg's avatar
      Merging r352119: · 2a1c7bde
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r352119 | rnk | 2019-01-24 23:26:51 +0100 (Thu, 24 Jan 2019) | 7 lines
      
      [clang-cl] Ignore space-separated /AI arguments
      
      The /AI flag is for #using directives, which I don't think we support.
      This is consistent with how the /I flag is handled by MSVC.  Add a test
      for it.
      
      Differential Revision: https://reviews.llvm.org/D57189
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 355675
      2a1c7bde
    • Hans Wennborg's avatar
      Merging r355491: · 2cc470aa
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r355491 | hans | 2019-03-06 11:26:19 +0100 (Wed, 06 Mar 2019) | 9 lines
      
      Inline asm constraints: allow ICE-like pointers for the "n" constraint (PR40890)
      
      Apparently GCC allows this, and there's code relying on it (see bug).
      
      The idea is to allow expression that would have been allowed if they
      were cast to int. So I based the code on how such a cast would be done
      (the CK_PointerToIntegral case in IntExprEvaluator::VisitCastExpr()).
      
      Differential Revision: https://reviews.llvm.org/D58821
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 355674
      2cc470aa
    • Hans Wennborg's avatar
      Merging r354937: · 76819754
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r354937 | joerg | 2019-02-27 01:40:59 +0100 (Wed, 27 Feb 2019) | 9 lines
      
      Fix inline assembler constraint validation
      
      The current constraint logic is both too lax and too strict. It fails
      for input outside the [INT_MIN..INT_MAX] range, but it also implicitly
      accepts 0 as value when it should not. Adjust logic to handle both
      correctly.
      
      Differential Revision: https://reviews.llvm.org/D58649
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 355673
      76819754