Skip to content
  1. May 15, 2013
    • Daniel Malea's avatar
      Clean up linux test decorators and add links to known bugs · e8bdd1f5
      Daniel Malea authored
      - s/skipOnLinux/skipIfLinux/ to match style of every other decorator
      - linkify bugizilla/PR numbers in comments
      
      No intended change in functionality.
      
      llvm-svn: 181913
      e8bdd1f5
    • Jim Ingham's avatar
      Fixed a few obvious errors pointed out by the static analyzer. · 5c42d8a8
      Jim Ingham authored
      llvm-svn: 181911
      5c42d8a8
    • Rafael Espindola's avatar
      Cleanup relocation sorting for ELF. · 0f2a6fe6
      Rafael Espindola authored
      We want the order to be deterministic on all platforms. NAKAMURA Takumi
      fixed that in r181864. This patch is just two small cleanups:
      
      * Move the function to the cpp file. It is only passed to array_pod_sort.
      * Remove the ppc implementation which is now redundant
      
      llvm-svn: 181910
      0f2a6fe6
    • Jordan Rose's avatar
      [analyzer] Put back DefaultBool's implicit conversion to bool. · 51918841
      Jordan Rose authored
      DefaultBool is basically just "bool with a default constructor", so it
      really should implicitly convert to bool. In fact, it should convert to
      bool&, so that it could be passed to functions that take bools by reference.
      
      This time, mark the operator bool& as implicit to promise that it's
      deliberate.
      
      llvm-svn: 181908
      51918841
    • NAKAMURA Takumi's avatar
      PPCISelLowering.h: Escape \@ in comments. [-Wdocumentation] · dc9f013a
      NAKAMURA Takumi authored
      llvm-svn: 181907
      dc9f013a
    • NAKAMURA Takumi's avatar
      Whitespace. · dcc66456
      NAKAMURA Takumi authored
      llvm-svn: 181906
      dcc66456
    • Daniel Malea's avatar
      Re-enable tests disabled due to llvm.org/pr14541 · 243b379a
      Daniel Malea authored
      - "platform process list" command works on Linux now
      - "process attach -n" (attach to process by name also works on Linux now)
      
      llvm-svn: 181905
      243b379a
    • Daniel Malea's avatar
      Implement "platform process list" on Linux · 25d7eb0d
      Daniel Malea authored
      - read process information from /proc
      - resolves llvm.org/pr14541 :)
      
      Patch by Mike Sartain!
      
      llvm-svn: 181904
      25d7eb0d
    • Daniel Malea's avatar
      Revert r181833: lldb prompt issue still occurs on buildbot... · 5cb6ea08
      Daniel Malea authored
      Revert r181833: lldb prompt issue still occurs on buildbot (http://lab.llvm.org:8011/builders/lldb-x86_64-linux/builds/4124)
      - maybe consider checking in the 'good' version of libedit to avoid ancient system version
      
      llvm-svn: 181903
      5cb6ea08
    • Daniel Malea's avatar
      Disable test case that causes assertion failure on Linux · 0a693d9d
      Daniel Malea authored
      - filed llvm.org/pr16016
      - fixed URL for llvm.org/pr16000
      
      llvm-svn: 181902
      0a693d9d
    • Michael Gottesman's avatar
      [objc-arc] Fixed a spelling error and made the statistic descriptions be... · b4e7f4d8
      Michael Gottesman authored
      [objc-arc] Fixed a spelling error and made the statistic descriptions be consistent about their usage of periods.
      
      llvm-svn: 181901
      b4e7f4d8
    • Douglas Gregor's avatar
      Add missing #include · 5a4cba0b
      Douglas Gregor authored
      llvm-svn: 181900
      5a4cba0b
    • Daniel Malea's avatar
      Fix cmake builds from checkouts with multiple remotes · e3a0a6ec
      Daniel Malea authored
      - newlines from GetRepositoryPath output were interfering with ninja builds
      - replace newlines with spaces
      - remove *only* trailing spaces from repo path
      
      llvm-svn: 181899
      e3a0a6ec
    • Derek Schuff's avatar
      Support unaligned load/store on more ARM targets · 72ddaba7
      Derek Schuff authored
      This patch matches GCC behavior: the code used to only allow unaligned
      load/store on ARM for v6+ Darwin, it will now allow unaligned load/store for
      v6+ Darwin as well as for v7+ on other targets.
      
      The distinction is made because v6 doesn't guarantee support (but LLVM assumes
      that Apple controls hardware+kernel and therefore have conformant v6 CPUs),
      whereas v7 does provide this guarantee (and Linux behaves sanely).
      
      Overall this should slightly improve performance in most cases because of
      reduced I$ pressure.
      
      Patch by JF Bastien
      
      llvm-svn: 181897
      72ddaba7
    • Fariborz Jahanian's avatar
      improve of note message and minor refactoring of my last · 478536b1
      Fariborz Jahanian authored
      patch (r181847).
      
      llvm-svn: 181896
      478536b1
    • Ulrich Weigand's avatar
      · 06840768
      Ulrich Weigand authored
      Remove MCELFObjectTargetWriter::adjustFixupOffset hack
      
      Now that PowerPC no longer uses adjustFixupOffset, and no other
      back-end (ever?) did, we can remove the infrastructure itself
      (incidentally addressing a FIXME to that effect).
      
      llvm-svn: 181895
      06840768
    • Ulrich Weigand's avatar
      · 2fb140ef
      Ulrich Weigand authored
      [PowerPC] Remove need for adjustFixupOffst hack
      
      Now that applyFixup understands differently-sized fixups, we can define
      fixup_ppc_lo16/fixup_ppc_lo16_ds/fixup_ppc_ha16 to properly be 2-byte
      fixups, applied at an offset of 2 relative to the start of the 
      instruction text.
      
      This has the benefit that if we actually need to generate a real
      relocation record, its address will come out correctly automatically,
      without having to fiddle with the offset in adjustFixupOffset.
      
      Tested on both 64-bit and 32-bit PowerPC, using external and
      integrated assembler.
      
      llvm-svn: 181894
      2fb140ef
    • Richard Sandiford's avatar
      [SystemZ] Make use of SUBTRACT HALFWORD · ffd14417
      Richard Sandiford authored
      Thanks to Ulrich Weigand for noticing that this instruction was missing.
      
      llvm-svn: 181893
      ffd14417
    • Ulrich Weigand's avatar
      · e7050ad0
      Ulrich Weigand authored
      [PowerPC] Add test case for r181891
      
      llvm-svn: 181892
      e7050ad0
    • Ulrich Weigand's avatar
      · 56f5b28d
      Ulrich Weigand authored
      [PowerPC] Correctly handle fixups of other than 4 byte size
      
      The PPCAsmBackend::applyFixup routine handles the case where a
      fixup can be resolved within the same object file.  However,
      this routine is currently hard-coded to assume the size of
      any fixup is always exactly 4 bytes.
      
      This is sort-of correct for fixups on instruction text; even
      though it only works because several of what really would be
      2-byte fixups are presented as 4-byte fixups instead (requiring
      another hack in PPCELFObjectWriter::adjustFixupOffset to clean
      it up).
      
      However, this assumption breaks down completely for fixups
      on data, which legitimately can be of any size (1, 2, 4, or 8).
      
      This patch makes applyFixup aware of fixups of varying sizes,
      introducing a new helper routine getFixupKindNumBytes (along
      the lines of what the ARM back end does).  Note that in order
      to handle fixups of size 8, we also need to fix the return type
      of adjustFixupValue to uint64_t to avoid truncation.
      
      Tested on both 64-bit and 32-bit PowerPC, using external and
      integrated assembler.
      
      llvm-svn: 181891
      56f5b28d
    • Kostya Serebryany's avatar
      [asan] disable BuiltinLongJmpTest on PowerPC · 2b824f35
      Kostya Serebryany authored
      llvm-svn: 181890
      2b824f35
    • Daniel Jasper's avatar
      Fix test breakage caused by change in clang-format. · 9dc096c8
      Daniel Jasper authored
      llvm-svn: 181888
      9dc096c8
    • Daniel Jasper's avatar
      Don't put short namespace on a single line. · abca58c9
      Daniel Jasper authored
      Before:
      namespace abc { class SomeClass; }
      namespace def { void someFunction() {} }
      
      After:
      namespace abc {
      class Def;
      }
      namespace def {
      void someFunction() {}
      }
      
      Rationale:
      a) Having anything other than forward declaration on the same line
         as a namespace looks confusing.
      b) Formatting namespace-forward-declaration-combinations different
         from other stuff is inconsistent.
      c) Wasting vertical space close to such forward declarations really
         does not affect readability.
      
      llvm-svn: 181887
      abca58c9
    • Arnaud A. de Grandmaison's avatar
      Add Jade to the list of external projects using LLVM in the release notes. · ca08b076
      Arnaud A. de Grandmaison authored
      Patch by: Antoine Lorence <Antoine.Lorence@insa-rennes.fr>
      
      llvm-svn: 181886
      ca08b076
    • Sylvestre Ledru's avatar
    • Daniel Jasper's avatar
      Improve recognition of template definitions. · 6f05e59f
      Daniel Jasper authored
      In the long run, this will probably be better fixed by a proper
      expression parser..
      
      Before:
        template <typename F>
        Matcher(const Matcher<F> & Other,
                typename enable_if_c < is_base_of<F, T>::value &&
                    !is_same<F, T>::value > ::type * = 0)
            : Implementation(new ImplicitCastMatcher<F>(Other)) {}
      
      After:
        template <typename F>
        Matcher(const Matcher<F> & Other,
                typename enable_if_c<is_base_of<F, T>::value &&
                                     !is_same<F, T>::value>::type * = 0)
            : Implementation(new ImplicitCastMatcher<F>(Other)) {}
      
      llvm-svn: 181884
      6f05e59f
    • Richard Sandiford's avatar
      [SystemZ] Add more future work items to the README · 619859f4
      Richard Sandiford authored
      Based on an analysis by Ulrich Weigand.
      
      llvm-svn: 181882
      619859f4
    • Kostya Serebryany's avatar
      [asan] fix powerpc build and one test; fix lint · 2b427162
      Kostya Serebryany authored
      llvm-svn: 181881
      2b427162
    • Hans Wennborg's avatar
      Better diagnostics for string initialization. · 8f62c5ca
      Hans Wennborg authored
      This commit improves Clang's diagnostics for string initialization.
      Where it would previously say:
      
        /tmp/a.c:3:9: error: array initializer must be an initializer list
        wchar_t s[] = "Hi";
                ^
        /tmp/a.c:4:6: error: array initializer must be an initializer list or string literal
        char t[] = L"Hi";
             ^
      
      It will now say
      
        /tmp/a.c:3:9: error: initializing wide char array with non-wide string literal
        wchar_t s[] = "Hi";
                ^
        /tmp/a.c:4:6: error: initializing char array with wide string literal
        char t[] = L"Hi";
             ^
      
      As a bonus, it also fixes the fact that Clang would previously reject
      this valid C11 code:
      
        char16_t s[] = u"hi";
        char32_t t[] = U"hi";
      
      because it would only recognize the built-in types for char16_t and
      char32_t, which do not exist in C.
      
      llvm-svn: 181880
      8f62c5ca
    • Richard Sandiford's avatar
      78a8ef87
    • Richard Sandiford's avatar
      [SystemZ] Consolidate assembler tests into 4 big tests · 364d821e
      Richard Sandiford authored
      llvm-svn: 181878
      364d821e
    • Daniel Jasper's avatar
      Break function declarations after multi-line return types. · c6fbc219
      Daniel Jasper authored
      Before:
      template <typename A>
      SomeLoooooooooooooooooooooongType<
          typename some_namespace::SomeOtherType<A>::Type> Function() {}
      
      After:
      template <typename A>
      SomeLoooooooooooooooooooooongType<
          typename some_namespace::SomeOtherType<A>::Type>
      Function() {}
      
      llvm-svn: 181877
      c6fbc219
    • Sylvestre Ledru's avatar
    • Timur Iskhodzhanov's avatar
      Fix build on Windows · 0588513e
      Timur Iskhodzhanov authored
      llvm-svn: 181873
      0588513e
    • Daniel Jasper's avatar
      Don't merge one-line functions in weird brace styles. · 00aca707
      Daniel Jasper authored
      llvm-svn: 181872
      00aca707
    • Daniel Jasper's avatar
      Remove diagnostics from clang-format. · d2ae41a7
      Daniel Jasper authored
      We only ever implemented one and that one is not actually all that
      helpful (e.g. gets incorrectly triggered by macros).
      
      llvm-svn: 181871
      d2ae41a7
    • Daniel Jasper's avatar
      Improve formatting of function types. · 5dad58e9
      Daniel Jasper authored
      The function type detection in r181438 and r181764 detected function
      types too eagerly. This led to inconsistent formatting of inline
      assembly and (together with r181687) to an incorrect formatting of calls
      in macros.
      
      Before: #define DEREF_AND_CALL_F(parameter) f (*parameter)
      After:  #define DEREF_AND_CALL_F(parameter) f(*parameter)
      llvm-svn: 181870
      5dad58e9
    • David Blaikie's avatar
      Use only explicit bool conversion operator · 7d17010d
      David Blaikie authored
      The most common (non-buggy) case are where such objects are used as
      return expressions in bool-returning functions or as boolean function
      arguments. In those cases I've used (& added if necessary) a named
      function to provide the equivalent (or sometimes negative, depending on
      convenient wording) test.
      
      DiagnosticBuilder kept its implicit conversion operator owing to the
      prevalent use of it in return statements.
      
      One bug was found in ExprConstant.cpp involving a comparison of two
      PointerUnions (PointerUnion did not previously have an operator==, so
      instead both operands were converted to bool & then compared). A test
      is included in test/SemaCXX/constant-expression-cxx1y.cpp for the fix
      (adding operator== to PointerUnion in LLVM).
      
      llvm-svn: 181869
      7d17010d
    • David Blaikie's avatar
      Use only explicit bool conversion operators · 041f1aa3
      David Blaikie authored
      BitVector/SmallBitVector::reference::operator bool remain implicit since
      they model more exactly a bool, rather than something else that can be
      boolean tested.
      
      The most common (non-buggy) case are where such objects are used as
      return expressions in bool-returning functions or as boolean function
      arguments. In those cases I've used (& added if necessary) a named
      function to provide the equivalent (or sometimes negative, depending on
      convenient wording) test.
      
      One behavior change (YAMLParser) was made, though no test case is
      included as I'm not sure how to reach that code path. Essentially any
      comparison of llvm::yaml::document_iterators would be invalid if neither
      iterator was at the end.
      
      This helped uncover a couple of bugs in Clang - test cases provided for
      those in a separate commit along with similar changes to `operator bool`
      instances in Clang.
      
      llvm-svn: 181868
      041f1aa3
    • Jakob Stoklund Olesen's avatar
      Use correct types for SPARC v9. · 248520bd
      Jakob Stoklund Olesen authored
      It's an LP64 platform.
      
      llvm-svn: 181867
      248520bd
Loading