Skip to content
  1. Dec 07, 2013
  2. Dec 06, 2013
    • Justin Bogner's avatar
      test/Driver: Check that @ arguments that aren't files are handled · 9ca8df1e
      Justin Bogner authored
      This tests the bug fix in llvm r196620.
      
      llvm-svn: 196621
      9ca8df1e
    • Justin Bogner's avatar
      Support: Fix handling of args that begin with @ but aren't files · 67ae9912
      Justin Bogner authored
      Command line arguments that begin with @ but aren't a path to an
      existing file currently cause later @file arguments to be ignored.
      
      Correctly skip over these arguments instead of trying to read a
      non-existent file 20 times and giving up.
      
      Since the problem manifests in the clang driver, the test is in that
      repository.
      
      Fixes rdar://problem/15590906
      
      llvm-svn: 196620
      67ae9912
    • Ana Pazos's avatar
      Added support for mcpu krait · 93a07c21
      Ana Pazos authored
      - krait processor currently modeled with the same features as A9.
      - Krait processor additionally has VFP4 (fused multiply add/sub)
      and hardware division features enabled.
      - krait has currently the same Schedule model as A9
      - krait cpu flag is not recognized by the GNU assembler yet,
      it is replaced with march=armv7-a to avoid a lower march
      from being used.
      
      llvm-svn: 196619
      93a07c21
    • Ana Pazos's avatar
      · dd6068d4
      Ana Pazos authored
      Added support for mcpu krait
      
      - krait processor currently modeled with the same features as A9.
      - Krait processor additionally has VFP4 (fused multiply add/sub)
      and hardware division features enabled.
      - krait has currently the same Schedule model as A9
      - krait cpu flag is not recognized by the GNU assembler yet,
      it is replaced with march=armv7-a to avoid a lower march
      from being used.
      
      llvm-svn: 196618
      dd6068d4
    • David Blaikie's avatar
      DebugInfo: Move unit begin/end labels into the unit · 7d734602
      David Blaikie authored
      This removes another case of spooky action at a distance (building the
      same label names in multiple places creating an implicit dependency
      between those places) and helps pave the way for type units.
      
      llvm-svn: 196617
      7d734602
    • Jim Ingham's avatar
      Do a little more prevention against SBValues getting used after the world has... · 793d8d9c
      Jim Ingham authored
      Do a little more prevention against SBValues getting used after the world has been torn down around them.
      
      llvm-svn: 196616
      793d8d9c
    • David Blaikie's avatar
      DebugInfo: Include the section and start-of-section label in the unit · 03073f74
      David Blaikie authored
      This is a precursor to moving type units into the correct (debug_types)
      section with comdat groups and full type unit headers.
      
      llvm-svn: 196615
      03073f74
    • Greg Clayton's avatar
    • Will Dietz's avatar
      Fix integer tests on platforms where uint64_t is 'unsigned long long'. · 186507da
      Will Dietz authored
      llvm-svn: 196612
      186507da
    • Duncan P. N. Exon Smith's avatar
      Don't use isNullValue to evaluate ConstantExpr · ce5f93ef
      Duncan P. N. Exon Smith authored
      ConstantExpr can evaluate to false even when isNullValue gives false.
      
      Fixes PR18143.
      
      llvm-svn: 196611
      ce5f93ef
    • Greg Clayton's avatar
      Fixed the GDBRemoteCommuncation to return a new... · 3dedae12
      Greg Clayton authored
      Fixed the GDBRemoteCommuncation to return a new GDBRemoteCommuncation::PacketResult enum for all packet sends/receives.
      
      <rdar://problem/15600045>
      
      Due to other recent changes, all connections to GDB servers that didn't support the "QStartNoAckMode" packet would cause us to fail to attach to the remote GDB server.
      
      The problem was that SendPacket* and WaitForResponse* packets would return a size_t indicating the number of bytes sent/received. The other issue was WaitForResponse* packets would strip the leading '$' and the trailing "#CC" (checksum) bytes, so the unimplemented response packet of "$#00" would get stripped and the WaitForResponse* packets would return 0.
      
      These new error codes give us flexibility to to more intelligent things in response to what is returned. 
      
      llvm-svn: 196610
      3dedae12
    • Yuchen Wu's avatar
      llvm-cov: Regenerated gcov files with r195513 changes. · 0db73111
      Yuchen Wu authored
      llvm-svn: 196609
      0db73111
    • David Peixotto's avatar
      Fix test case inefficiency · fc004bdd
      David Peixotto authored
      Was accidently passing the file to clang twice. No functionaly change.
      
      llvm-svn: 196608
      fc004bdd
    • David Peixotto's avatar
      Integrated assembler incorrectly lexes ARM-style comments · 2cdc56d2
      David Peixotto authored
      The integrated assembler fails to properly lex arm comments when
      they are adjacent to an identifier in the input stream. The reason
      is that the arm comment symbol '@' is also used as symbol variant in
      other assembly languages so when lexing an identifier it allows the
      '@' symbol as part of the identifier.
      
      Example:
        $ cat comment.s
        foo:
          add r0, r0@got to parse this as a comment
      
        $ llvm-mc -triple armv7 comment.s
        comment.s:4:18: error: unexpected token in argument list
          add r0, r0@got to parse this as a comment
                         ^
      This should be parsed as correctly as `add r0, r0`.
      
      This commit modifes the assembly lexer to not include the '@' symbol
      in identifiers when lexing for targets that use '@' for comments.
      
      llvm-svn: 196607
      2cdc56d2
    • David Peixotto's avatar
      Add option to use temporary file for assembling with clang · 3e325d74
      David Peixotto authored
      This commit adds the flag '-via-file-asm' to the clang driver. The
      purpose of this flag is to have a way to test that clang can consume
      the assembly code that it outputs. When passed this flag, clang will
      generate a temporary file that contains the assembly output from the
      compile step. This assembly file will then be consumed by either the
      integrated assembler or the external assembler. To test that the
      integrated assembler can consume its own output compile with:
      
        $ clang -integrated-assembler -via-file-asm
      
      Without the '-via-file-asm' flag, clang would directly create the
      object file when using the integrated assembler. With the flag it
      will first create the temporary assembly file and then read that
      file and assemble it with the integrated assembler.
      
      The flow is similar to -save-temps, except that it only effects
      the assembly input and the temporary file is not saved.
      
      llvm-svn: 196606
      3e325d74
    • Warren Hunt's avatar
      [MS-ABI] adds padding before all vbases after a bitfield · 71140d68
      Warren Hunt authored
       
      MS-ABI adds padding before *every* vbase if the last field in a record 
      is a bit-field. This changes clangs behavior to match. I also fix some 
      windows-style line endings in the test file.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2277
      
      llvm-svn: 196605
      71140d68
    • Rafael Espindola's avatar
    • Warren Hunt's avatar
      [MS-ABI] Fix alias-avoidance padding between bases · 049f673d
      Warren Hunt authored
      Adds padding between bases or virtual bases in an attempt to avoid 
      aliasing of zero-sized sub-objects.  The approach used by the ABI adds 
      two more bits of state.  Detailed comments are in the code.  Test cases 
      included.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2258
      
      llvm-svn: 196602
      049f673d
    • David Blaikie's avatar
      DwarfDebug: Walk skeletons during fission pubtypes/pubnames emission · 4f623205
      David Blaikie authored
      This more accurately represents the actual walk - pubnames/pubtypes are
      emitted into the .o, not the .dwo, and reference the skeletons not the
      full units.
      
      Use the newly established ID->index invariant to lookup the underlying
      full unit to retrieve its public names and types.
      
      llvm-svn: 196601
      4f623205
    • David Blaikie's avatar
      DebugInfo: Ensure unit IDs (for non-skeletal units) match thein index in the list · 2666e24c
      David Blaikie authored
      This simplifies reasoning about the code and enables simple navigation
      from a skeleton to its full unit. (currently there are no type unit
      skeletons, so the skeleton list doesn't have the same ID == index
      property)
      
      Eventually we should get rid of this ID and just store the labels we
      need as the IDs are allowing this code to create difficult to
      manage/understand associations (loops over non-skeletal units are
      implicitly referencing their skeletal units during pub* emission, for
      example). It may be necessary to have some kind of skeleton->full unit
      association and a more direct pointer or similar device would be
      preferable than an index.
      
      llvm-svn: 196600
      2666e24c
    • Anna Zaks's avatar
      Fixup to r196593. · f5308fac
      Anna Zaks authored
      This is another regression fixed by reverting r189090.
      
      In this case, the problem is not live variables but the approach that was taken in r189090. This regression was caused by explicitly binding "true" to the condition when we take the true branch. Normally that's okay, but in this case we're planning to reuse that condition as the value of the expression.
      
      llvm-svn: 196599
      f5308fac
    • Anna Zaks's avatar
      Revert "[analyzer] Refactor conditional expression evaluating code" · cf8d2165
      Anna Zaks authored
      This reverts commit r189090.
      
      The original patch introduced regressions (see the added live-variables.* tests). The patch depends on the correctness of live variable analyses, which are not computed correctly. I've opened PR18159 to track the proper resolution to this problem.
      
      The patch was a stepping block to r189746. This is why part of the patch reverts temporary destructor tests that started crashing. The temporary destructors feature is disabled by default.
      
      llvm-svn: 196593
      cf8d2165
Loading