Skip to content
  1. Nov 20, 2013
    • Aaron Ballman's avatar
      Removed a duplicate diagnostic related to attribute subjects for thread safety... · 07e2764c
      Aaron Ballman authored
      Removed a duplicate diagnostic related to attribute subjects for thread safety annotations, and replaced it with the more general attribute diagnostic. Updated the test case in the one instance where wording changed. No functional change intended.
      
      llvm-svn: 195275
      07e2764c
    • Aaron Ballman's avatar
      Updated the thread safety attribute definitions to have subjects defined.... · da9c0890
      Aaron Ballman authored
      Updated the thread safety attribute definitions to have subjects defined. These are based off what SemaDeclAttr.cpp is checking for in terms of diagnostic reporting. No functional change intended.
      
      llvm-svn: 195274
      da9c0890
    • Greg Clayton's avatar
      Expose SBPlatform through the public API. · fbb76349
      Greg Clayton authored
      Example code:
      
      remote_platform = lldb.SBPlatform("remote-macosx"); 
      remote_platform.SetWorkingDirectory("/private/tmp")
      debugger.SetSelectedPlatform(remote_platform)
      
      connect_options = lldb.SBPlatformConnectOptions("connect://localhost:1111"); 
      err = remote_platform.ConnectRemote(connect_options)
      if err.Success():
          print >> result, 'Connected to remote platform:'
          print >> result, 'hostname: %s' % (remote_platform.GetHostname())
          src = lldb.SBFileSpec("/Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework", False)
          dst = lldb.SBFileSpec()
          # copy src to platform working directory since "dst" is empty
          err = remote_platform.Install(src, dst);
          if err.Success():
              print >> result, '%s installed successfully' % (src)
          else:
              print >> result, 'error: failed to install "%s": %s' % (src, err)
      
      
      Implemented many calls needed in lldb-platform to be able to install a directory that contains symlinks, file and directories.
      
      The remote lldb-platform can now launch GDB servers on the remote system so that remote debugging can be spawned through the remote platform when connected to a remote platform.
      
      The API in SBPlatform is subject to change and will be getting many new functions.
      
      llvm-svn: 195273
      fbb76349
    • Hal Finkel's avatar
      PPC popcnt[dw] do not have record forms · 884bde30
      Hal Finkel authored
      The instruction definitions incorrectly specified that popcntd and popcntw have
      record forms; they do not. This mistake was causing invalid code generation.
      
      llvm-svn: 195272
      884bde30
    • Hal Finkel's avatar
      Add loop rerolling code owner · 52261a65
      Hal Finkel authored
      I am the code owner of the loop reroller.
      
      llvm-svn: 195271
      52261a65
    • Rui Ueyama's avatar
      Use NativeReferenceIvarsV2 if necessary. · e05b629d
      Rui Ueyama authored
      NativeReferenceIvarsV1 cannot handle more than 65535 relocation targets
      because its field to point to the target table is of type uint16_t. Because
      of that limitation, the LLD couldn't link a file containing more than 65535
      relocations. 65535 is not a big number - the LLD couldn't even link itself
      with V1.
      
      This patch solves the issue by adding NativeReferenceIvarsV2 support. The
      new structure has more bits for the target table, so it can handle a large
      number of relocatinos.
      
      V2 structure is larger than V1. In order to prevent file bloating, V2 format
      is used only when the resulting file cannot be represented in V1 format. The
      writer and the reader support both V1 and V2 formats.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2217
      
      llvm-svn: 195270
      e05b629d
    • Rui Ueyama's avatar
      Fix Weak External symbol handling. · 70f11d75
      Rui Ueyama authored
      The fallback atom was used only when it's searching for a symbol in a library;
      if an undefined symbol was not found in a library, the LLD looked for its
      fallback symbol in the library.
      
      Although it worked in most cases, because symbols with fallbacks usually occur
      only in OLDNAMES.LIB (a standard library), that behavior was incompatible with
      link.exe. This patch fixes the issue so that the semantics is the same as
      MSVC's link.exe
      
      The new (and correct, I believe) behavior is this:
      
       - If there's no definition for an undefined atom, replace the undefined atom
         with its fallback and then proceed (e.g. look in the next file or stop
         linking as usual.)
      
      Weak External symbols are underspecified in the Microsoft PE/COFF spec. However,
      as long as I observed the behavior of link.exe, this seems to be what we want
      for compatibility.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2162
      
      llvm-svn: 195269
      70f11d75
    • Justin Holewinski's avatar
      [NVPTX] Update ABI handling · f9329ff6
      Justin Holewinski authored
      For PTX, we want the target to handle struct returns directly.
      
      llvm-svn: 195268
      f9329ff6
    • Manman Ren's avatar
      Set default Dwarf Version for -gline-tables-only on Darwin to 2. · 17bdb0f8
      Manman Ren authored
      We are still using Dwarf Version 2 for Darwin systems, make it consistent
      with -gline-tables-only.
      
      This should fix an internal buildbot.
      
      llvm-svn: 195267
      17bdb0f8
    • Benjamin Kramer's avatar
      MachineBlockPlacement: Strengthen the source order bias when picking an exit block. · c8160d65
      Benjamin Kramer authored
      We now only allow breaking source order if the exit block frequency is
      significantly higher than the other exit block. The actual bias is
      currently under a flag so the best cut-off can be found; the flag
      defaults to the old behavior. The idea is to get some benchmark coverage
      over different values for the flag and pick the best one.
      
      When we require the new frequency to be at least 20% higher than the old
      frequency I see a 5% speedup on zlib's deflate when compressing a random
      file on x86_64/westmere. Hal reported a small speedup on Fhourstones on
      a BG/Q and no regressions in the test suite.
      
      The test case is the full long_match function from zlib's deflate. I was
      reluctant to add it for previous tweaks to branch probabilities because
      it's large and potentially fragile, but changed my mind since it's an
      important use case and more likely to break with all the current work
      going into the PGO infrastructure.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2202
      
      llvm-svn: 195265
      c8160d65
    • Fariborz Jahanian's avatar
      ObjectiveC ARC. Better checking of toll free briding · 91fb0be9
      Fariborz Jahanian authored
      from qualified-id objects to CF types with 
      objc_bridge annotation. // rdar://15454846
      
      llvm-svn: 195264
      91fb0be9
    • David Blaikie's avatar
      DwarfCompileUnit: Initialize DebugInfoOffset. · beee345a
      David Blaikie authored
      While not strictly necessary (the class has an invariant that
      "setDebugInfoOffset" is called before "getDebugInfoOffset" - anyone
      client that actually gets the default zero offset is buggy/broken) this
      is consistent with the code as originally written and the removal of the
      initialization was an accident in r195166.
      
      Suggested by Manman Ren.
      
      llvm-svn: 195263
      beee345a
    • David Blaikie's avatar
      CR feedback for r195166: Add comments regarding type unit mapping and type... · bcb418e5
      David Blaikie authored
      CR feedback for r195166: Add comments regarding type unit mapping and type units disabling cross-CU sharing.
      
      Changes suggested by Manman Ren.
      
      llvm-svn: 195262
      bcb418e5
    • Chandler Carruth's avatar
      Make the moved-from SmallPtrSet be a valid, empty, small-state object. · c74010df
      Chandler Carruth authored
      Enhance the tests to actually require moves in C++11 mode, in addition
      to testing the moved-from state. Further enhance the tests to cover
      copy-assignment into a moved-from object and moving a large-state
      object. (Note that we can't really test small-state vs. large-state as
      that isn't an observable property of the API really.) This should finish
      addressing review on r195239.
      
      llvm-svn: 195261
      c74010df
    • Chandler Carruth's avatar
      Add a test for assignment operator behavior which was changed in · 6d888bc0
      Chandler Carruth authored
      r195239, as well as a comment about the fact that assigning over
      a moved-from object was in fact tested. Addresses some of the review
      feedback on r195239.
      
      llvm-svn: 195260
      6d888bc0
    • Ted Kremenek's avatar
      Refine 'deprecated' checking for Objective-C classes/methods. · cb42dbe7
      Ted Kremenek authored
      - If a deprecated class refers to another deprecated class, do not warn.
      - @implementations of a deprecated class can refer to other deprecated things.
      
      Fixes <rdar://problem/15407366> and <rdar://problem/15466783>.
      
      llvm-svn: 195259
      cb42dbe7
    • Alexander Kornienko's avatar
      Added an option to allow short function bodies be placed on a single line. · 3cfa9739
      Alexander Kornienko authored
      Summary:
      The AllowShortFunctionsOnASingleLine option now controls short function
      body placement on a single line independent of the BreakBeforeBraces option.
      Updated tests using BreakBeforeBraces other than BS_Attach.
      
      Addresses http://llvm.org/PR17888
      
      Reviewers: klimek, djasper
      
      Reviewed By: klimek
      
      CC: cfe-commits, klimek
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2230
      
      llvm-svn: 195256
      3cfa9739
    • Enea Zaffanella's avatar
      When wrapping lazily generated builtins in an extern "C" context, · d8430928
      Enea Zaffanella authored
      flag the LinkageSpecDecl as being implicitly generated too.
      
      llvm-svn: 195255
      d8430928
    • Colin Riley's avatar
      Fix MSVC build · 61979cca
      Colin Riley authored
      The demangler added in r193708 from cxa_demangle.cpp uses language features which are not supported by the latest visual studio. In order to preserve the msvc build, this patch restores the previous (non)functionality in windows under msvc by disabling the demangler. 
      
      llvm-svn: 195254
      61979cca
    • Daniel Jasper's avatar
      Simplify fix proposed in r195240. · 48437ce5
      Daniel Jasper authored
      llvm-svn: 195253
      48437ce5
    • Daniel Sanders's avatar
      [mips][msa] Pseudo instructions require HasMSA too. Inherit from MSAPseudo instead of MipsPseudo · f93e8152
      Daniel Sanders authored
      There's no test case for this commit. This is because it is doubtful that the
      incorrect behaviour can actually trigger. When MSA is not enabled, the type
      legalizer should have eliminated all occurrences of patterns the affected
      pseudo-instruction could possibly match before instruction selection occurs.
      
      llvm-svn: 195252
      f93e8152
    • Alexander Kornienko's avatar
      Support for JavaScript === and !== operators. · 7c9c0507
      Alexander Kornienko authored
      Reviewers: klimek, djasper
      
      Reviewed By: klimek
      
      CC: cfe-commits, klimek
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2231
      
      llvm-svn: 195251
      7c9c0507
    • Evgeniy Stepanov's avatar
      [asan] Fix OSX tests. · 3e29c6bf
      Evgeniy Stepanov authored
      llvm-svn: 195250
      3e29c6bf
    • Simon Atanasyan's avatar
      [Mips] Take in account the -mfp64 command line option when build paths · 5c5b5daa
      Simon Atanasyan authored
      to the crt*.o files, libraries and headers for the MIPS FSFS toolchain.
      
      llvm-svn: 195249
      5c5b5daa
    • Daniel Sanders's avatar
      FileCheck: fix a bug with multiple --check-prefix options. Similar to r194565 · 43b5f572
      Daniel Sanders authored
      Summary:
      Directives are being ignored, when they occur between a partial-word false
      match and any match on another prefix.
      
      For example, with FOO and BAR prefixes:
         _FOO
         FOO: foo
         BAR: bar
      FileCheck incorrectly matches:
         fog
         bar
      
      This happens because FOO falsely matched as a partial word at '_FOO' and was
      ignored while BAR matched at 'BAR:'. The match of BAR is incorrectly returned
      as the 'first match' causing the FOO directive to be discarded.
      
      Fixed this the same way as r194565 (D2166) did for a similar test case.
      The partial-word false match should be counted as a match for the purposes of
      finding the first match of a prefix, but should be returned as a false match
      using CheckTy::CheckNone so that it isn't treated as a directive.
      
      Fixes PR17995
      
      Reviewers: samsonov, arsenm
      
      Reviewed By: samsonov
      
      CC: llvm-commits
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2228
      
      llvm-svn: 195248
      43b5f572
    • NAKAMURA Takumi's avatar
      llvm/CMakeLists.txt: Update LLVM_VERSION_MINOR to 5. · a5997c4e
      NAKAMURA Takumi authored
      llvm-svn: 195247
      a5997c4e
    • Evgeniy Stepanov's avatar
      [msan] Tweak io_submit syscall hook. · 0958ecca
      Evgeniy Stepanov authored
      llvm-svn: 195246
      0958ecca
    • Daniel Sanders's avatar
      [mips][msa] Remove unused instruction class MSA_I8_X_DESC_BASE · 6b97d604
      Daniel Sanders authored
      llvm-svn: 195245
      6b97d604
    • Evgeniy Stepanov's avatar
      584fd96e
    • Evgeniy Stepanov's avatar
    • Colin Riley's avatar
      Test commit. Capitalize 'os'. · 4442546b
      Colin Riley authored
      llvm-svn: 195242
      4442546b
    • Chandler Carruth's avatar
      [PM] Add the preservation system to the new pass manager. · c0bfa8c2
      Chandler Carruth authored
      This adds a new set-like type which represents a set of preserved
      analysis passes. The set is managed via the opaque PassT::ID() void*s.
      The expected convenience templates for interacting with specific passes
      are provided. It also supports a symbolic "all" state which is
      represented by an invalid pointer in the set. This state is nicely
      saturating as it comes up often. Finally, it supports intersection which
      is used when finding the set of preserved passes after N different
      transforms.
      
      The pass API is then changed to return the preserved set rather than
      a bool. This is much more self-documenting than the previous system.
      Returning "none" is a conservatively correct solution just like
      returning "true" from todays passes and not marking any passes as
      preserved. Passes can also be dynamically preserved or not throughout
      the run of the pass, and whatever gets returned is the binding state.
      Finally, preserving "all" the passes is allowed for no-op transforms
      that simply can't harm such things.
      
      Finally, the analysis managers are changed to instead of blindly
      invalidating all of the analyses, invalidate those which were not
      preserved. This should rig up all of the basic preservation
      functionality. This also correctly combines the preservation moving up
      from one IR-layer to the another and the preservation aggregation across
      N pass runs. Still to go is incrementally correct invalidation and
      preservation across IR layers incrementally during N pass runs. That
      will wait until we have a device for even exposing analyses across IR
      layers.
      
      While the core of this change is obvious, I'm not happy with the current
      testing, so will improve it to cover at least some of the invalidation
      that I can test easily in a subsequent commit.
      
      llvm-svn: 195241
      c0bfa8c2
    • Manuel Klimek's avatar
      Fix bug where optimization would lead to strange line breaks. · 06c84f2e
      Manuel Klimek authored
      Before:
        void f() {
          CHECK_EQ(aaaa, (
                             *bbbbbbbbb)->cccccc)
              << "qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq";
        }
      
      After:
        void f() {
          CHECK_EQ(aaaa, (*bbbbbbbbb)->cccccc)
              << "qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq";
        }
      
      llvm-svn: 195240
      06c84f2e
    • Chandler Carruth's avatar
      Give SmallPtrSet move semantics when we have R-value references. · 55758e96
      Chandler Carruth authored
      Somehow, this ADT got missed which is moderately terrifying considering
      the efficiency of move for it.
      
      The code to implement move semantics for it is pretty horrible
      currently but was written to reasonably closely match the rest of the
      code. Unittests that cover both copying and moving (at a basic level)
      added.
      
      llvm-svn: 195239
      55758e96
    • NAKAMURA Takumi's avatar
    • NAKAMURA Takumi's avatar
      Whitespace. · f2392ebb
      NAKAMURA Takumi authored
      llvm-svn: 195237
      f2392ebb
    • Bill Wendling's avatar
      Update to next release numbers. · 0a794a4b
      Bill Wendling authored
      llvm-svn: 195236
      0a794a4b
    • Bill Wendling's avatar
      Update to reflect the next release. · 70d39e6f
      Bill Wendling authored
      llvm-svn: 195235
      70d39e6f
    • Elena Demikhovsky's avatar
      Fixed compilation error. · a5967af9
      Elena Demikhovsky authored
      llvm-svn: 195230
      a5967af9
    • Elena Demikhovsky's avatar
      AVX-512: Concat 4 128-bit vectors in one 512-bit vector. · e1f9bf05
      Elena Demikhovsky authored
      llvm-svn: 195229
      e1f9bf05
Loading