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

Already on GitHub? Sign in to your account

Update clang to the upstream tip #20

merged 190 commits into from Jul 5, 2012


None yet

krasin commented Jul 4, 2012

No description provided.

atrick and others added some commits Jun 26, 2012

@atrick atrick MachineBlockPlacement would prefer that clang lay out blocks in sourc…
…e order.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159215 91177308-0d34-0410-b5e6-96231b3b80d8
Richard Trieu Add template type diffing to Clang. This feature will provide a better
comparison between two templated types when they both appear in a diagnostic.
Type elision will remove indentical template arguments, which can be disabled
with -fno-elide-type.  Cyan highlighting is applied to the differing types.

For more formatting, -fdiagnostic-show-template-tree will output the template
type as an indented text tree, with differences appearing inline. Template
tree works with or without type elision.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159216 91177308-0d34-0410-b5e6-96231b3b80d8
@dwblaikie dwblaikie Remove spurious semicolons committed in r159216.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159218 91177308-0d34-0410-b5e6-96231b3b80d8
@espindola espindola Fix a bug in my previous patch: If we are not doing a virtual call be…

the member expression is qualified, call the method specified in the code,
not the most derived one we can find.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159219 91177308-0d34-0410-b5e6-96231b3b80d8
Manman Ren X86: add GATHER intrinsics (AVX2) in Clang
Support the following intrinsics:
  _mm_mask_i32gather_pd, _mm256_mask_i32gather_pd, _mm_mask_i64gather_pd
  _mm256_mask_i64gather_pd, _mm_mask_i32gather_ps, _mm256_mask_i32gather_ps
  _mm_mask_i64gather_ps, _mm256_mask_i64gather_ps

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159222 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Implement a lexer for structured comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159223 91177308-0d34-0410-b5e6-96231b3b80d8
@zygoloid zygoloid Remove typedef which is unused after r159189.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159224 91177308-0d34-0410-b5e6-96231b3b80d8
@atrick atrick unit test tweak
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159225 91177308-0d34-0410-b5e6-96231b3b80d8
Fariborz Jahanian preprocessing: gcc supports #line 0. So, treat this
as a gcc supported extension with usual treatment
with -pedantic (warn) and -pedantic-errors (error).
// rdar://11550996

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159226 91177308-0d34-0410-b5e6-96231b3b80d8
Chad Rosier Whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159229 91177308-0d34-0410-b5e6-96231b3b80d8
@djasper djasper Always use getDerived().shouldVisitImplicitCode() so it can be altered
in subclasses.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159231 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k Enable -mcpu=native and -march=native for arm targets.
This is only implemented on linux at the moment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159232 91177308-0d34-0410-b5e6-96231b3b80d8
Timur Iskhodzhanov [Windows] Improve mangling of templates when back references are present
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159234 91177308-0d34-0410-b5e6-96231b3b80d8
Chad Rosier Whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159235 91177308-0d34-0410-b5e6-96231b3b80d8
@jrose-apple jrose-apple [analyzer] Remove unneeded helper function (it's in ASTContext.h)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159244 91177308-0d34-0410-b5e6-96231b3b80d8
@jrose-apple jrose-apple [analyzer] RetainCountChecker: remove unused SelfOwn ArgEffect kind.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159245 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Initialize RawCommentList::BriefTextValid when deserializing AST.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159246 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Simplify logic in BriefParser::Parse(), per Jordan's comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159247 91177308-0d34-0410-b5e6-96231b3b80d8
Timur Iskhodzhanov Add a few more test cases for the -cxx-abi microsoft mangler. Some of…
… them were broken recently

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159248 91177308-0d34-0410-b5e6-96231b3b80d8
Richard Trieu Update documentation with regards to template type diffing.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159249 91177308-0d34-0410-b5e6-96231b3b80d8
Timur Iskhodzhanov Add a few (currently failing) tests for the PR13207 (template manglin…
…g in the presence of back references).

I've added an extra FileCheck pass for that with an extra "CURRENT" prefix.
I've carefully chosed the CURRENT/CORRECT prefixes so they
a) are self-descriptive
b) have the same length so the mangling between the current and the correct version is obvious

Feel free to ask me to change the prefixes if you know a better alternative.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159250 91177308-0d34-0410-b5e6-96231b3b80d8
Richard Trieu Add missing words to manual.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159251 91177308-0d34-0410-b5e6-96231b3b80d8
@djasper djasper Introduce __has_feature(attribute_unused_on_fields) to determine whether
the current version of clang understands __attribute__((unused)) on

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159252 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Initialize RawComment::BriefTextValid in other constructor, too.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159253 91177308-0d34-0410-b5e6-96231b3b80d8
@Axel-Naumann Axel-Naumann From Vassil Vassilev:
add interface for removing a FileEntry from the cache.
Forces a re-read the contents from disk, e.g. because a tool (like cling) wants to pick up a modified file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159256 91177308-0d34-0410-b5e6-96231b3b80d8
@chandlerc chandlerc Update the Clang CMake build to reflect the name change in LLVM r159258.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159260 91177308-0d34-0410-b5e6-96231b3b80d8
@chandlerc chandlerc Remove a completely unused and remarkably inaccurate list of test
directories from the cmake file. Dunno what the history is here, but
we're not using it.

More refactorings to come here.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159261 91177308-0d34-0410-b5e6-96231b3b80d8
@Axel-Naumann Axel-Naumann Fix for r159256 on Windows.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159262 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Add a test for unterminated /* comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159267 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Comment lexer: counting backwards from token end is thought to be con…
…fusing. We already have a pointer to the beginning of the token, so use it to extract the text instead.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159269 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Remove unsigned and a pointer from a comment token (so that each toke…
…n can have only one semantic string value attached to it), at a cost of adding an additional token.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159270 91177308-0d34-0410-b5e6-96231b3b80d8
@espindola espindola Fix a crash I introduced in r159212.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159279 91177308-0d34-0410-b5e6-96231b3b80d8
@espindola espindola Implement John McCall's review of r159212 other than the this pointer…
… not

being updated. Will fix that in a second.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159280 91177308-0d34-0410-b5e6-96231b3b80d8
Fariborz Jahanian patch to suggest 'static' function should be 'static inline'
when it appears to be unused and occurs in a header.
// rdar://11202617

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159282 91177308-0d34-0410-b5e6-96231b3b80d8
@zygoloid zygoloid Check for non-POD vararg argument type after default argument promoti…
…on, not

before, so we don't incorrectly think arguments of function type are non-POD.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159290 91177308-0d34-0410-b5e6-96231b3b80d8
@zygoloid zygoloid Refactoring after r159290: don't hold onto and check a misleading Qua…

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159292 91177308-0d34-0410-b5e6-96231b3b80d8
Fariborz Jahanian objective-c mrc: Issue warning for mrc, as is done for arc, when
property retains a block object as it could be on 
the stack. // rdar://11761511

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159293 91177308-0d34-0410-b5e6-96231b3b80d8
@eefriedman eefriedman Propagate lvalue alignment into bitfields. Per report on cfe-dev.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159295 91177308-0d34-0410-b5e6-96231b3b80d8
Timur Iskhodzhanov Two more tests for PR13207 - wrong mangling of templates with back re…
…ferences [-cxx-abi microsoft]

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159296 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Fix an infinite loop in comment lexer: we were not advancing in the i…
…nput character stream when we saw a '<' that is not a start of an HTML tag.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159303 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Attaching documentation comments to declarations: don't attach a comm…
…ent to a declaration if there is a preprocessor directive between them.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159305 91177308-0d34-0410-b5e6-96231b3b80d8
@akyrtzi akyrtzi Fix uninitialized variable use bug found by the clairvoyant static an…

Commit::canReplaceText would not initialize its out 'Len' parameter before
returning true and it would be used uninitialized in Commit::replaceText.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159306 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Teach \brief parser about commands that start a new paragraph implicitly
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159309 91177308-0d34-0410-b5e6-96231b3b80d8
@isanbard isanbard Update the #include to find the DebugInfo.h in the correct place
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159315 91177308-0d34-0410-b5e6-96231b3b80d8
@echristo echristo Fix grammar.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159321 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Cleanup \brief comment. Since it is a single paragraph, no need to sa…
…ve newlines there.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159325 91177308-0d34-0410-b5e6-96231b3b80d8
@espindola espindola Fix another issue with devirtualizing calls to final methods by passi…
…ng them

the correct this pointer. There is some potential for sharing a bit more
code with canDevirtualizeMemberFunctionCalls, but that can be done in an
independent patch.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159326 91177308-0d34-0410-b5e6-96231b3b80d8
@zygoloid zygoloid Add warning flag -Winvalid-pp-token for preprocessing-tokens which have
undefined behaviour, and move the diagnostic for '' from an Error into
an ExtWarn in this group. This is important for some users of the preprocessor,
and is necessary for gcc compatibility.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159335 91177308-0d34-0410-b5e6-96231b3b80d8
@zmodem zmodem Add -ftls-model command-line flag.
This allows for setting the default TLS model. (PR9788)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159336 91177308-0d34-0410-b5e6-96231b3b80d8
@espindola espindola Don't devirtualize calls when we don't have the correct type of the t…
…his pointer

handy. It can be done, but we would have to build a derived-to-base cast
during codegen to compute the correct this pointer.

I will handle covariant returns next.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159350 91177308-0d34-0410-b5e6-96231b3b80d8
@espindola espindola Disable devirtualization when we have covariant returns. I will open …
…a bug

for tracking this.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159351 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Attaching comments to declarations: don't attach comments to implicit…
… declarations.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159354 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr Remove redundant check.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159355 91177308-0d34-0410-b5e6-96231b3b80d8
@jrose-apple jrose-apple Warn on weak properties declared in protocols as well.
Previously this caused a crash, since protocols are not interfaces.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159357 91177308-0d34-0410-b5e6-96231b3b80d8
@espindola espindola Compare the canonical types and document why we give up on the covari…
…ant case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159360 91177308-0d34-0410-b5e6-96231b3b80d8
Simon Atanasyan Support MIPS DSP Rev1 intrinsics.
This patch was reviewed in the llvm-commits list by Jim Grosbach.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159366 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k Now that we use the GCC builtin <-> llvm intrinsic, dead code elimina…
…te the handwritten emitter.

The generated code uncovered an invalid prototype for __builtin_mips_shilo, fix it along the way.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159368 91177308-0d34-0410-b5e6-96231b3b80d8
Matt Beaumont-Gay Only print a semicolon after "no known conversion for Nth argument" i…
…f there

is a following clause.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159369 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k Dead code eliminate the massive hexagon builtin intrinsic supporting …

The tablegen'd code does the same thing without this egregious duplication.
In my limited testing everything seems to work, however there can be
differences if the clang and llvm builtin definitions don't match.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159371 91177308-0d34-0410-b5e6-96231b3b80d8
@akyrtzi akyrtzi [libclang] Don't bind a StringRef to a temporary std::string object.
It may end up pointing at garbage.

Fixes the MSVC debug build. rdar://11703319

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159377 91177308-0d34-0410-b5e6-96231b3b80d8

dwblaikie and others added some commits Jul 2, 2012

@dwblaikie dwblaikie Remove unused member (& consequently unused parameter) in SA's Call c…

This member became unused in r159559.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159581 91177308-0d34-0410-b5e6-96231b3b80d8
@chandlerc chandlerc Clone a bit of LIT flag defaults from the LLVM CMake file into the
standalone section of the Clang CMake files.

This will likely make the lit runs in Clang much more suitable to IDEs
such as Xcode and MSVC when operating in a standalone mode.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159582 91177308-0d34-0410-b5e6-96231b3b80d8
@DougGregor DougGregor Be more eager about setting the 'Invalid' bit on an invalid class
template instantiation. I wasn't able to reproduce this down to
anything small enough to put in our test suite, but it's "obviously"
okay to set the invalid bit earlier and precludes a
known-broken-but-not-marked-broken class from being used elsewhere.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159584 91177308-0d34-0410-b5e6-96231b3b80d8
@tkremenek tkremenek Make this test invariant to future changes of the max loop unrolling …

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159585 91177308-0d34-0410-b5e6-96231b3b80d8
@eefriedman eefriedman When we're looking for redeclarations which might provide a definitio…
…n in CodeGen, make sure we examine all the redeclarations. PR13252.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159586 91177308-0d34-0410-b5e6-96231b3b80d8
@jrose-apple jrose-apple In blocks, only pretend that enum constants have enum type if necessary.
In C, enum constants have the type of the enum's underlying integer type,
rather than the type of the enum. (This is not true in C++.) Thus, when a
block's return type is inferred from an enum constant, it is incompatible
with expressions that return the enum type.

In r158899, I told block returns to pretend that enum constants have enum
type, like in C++. Doug Gregor pointed out that this can break existing code.

Now, we don't check the types of return statements until the end of the block.
This lets us go back and add implicit casts in blocks with mixed enum
constants and enum-typed expressions.

<rdar://problem/11662489> (again)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159591 91177308-0d34-0410-b5e6-96231b3b80d8
@dwblaikie dwblaikie Include -D files in crash report repro scripts. (PR13255)
Now that we're only using -frewrite-includes rather than full preprocessing
when producing repro source files, we should also include command line macro
definitions in the repro script.

I don't have a test case for this because I'm not sure if/how I can open the
crash report file when the name is only known by scraping the crash report
output. Suggestions welcome if anyone thinks it'd be helpful.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159592 91177308-0d34-0410-b5e6-96231b3b80d8
@chandlerc chandlerc We support a mode where the Clang regression tests are run but not the
Clang unit tests. It's not clear why we support this mode in builds
where LLVM is available (LLVM itself does not), but at least this makes
us support it correctly.

This also fixes a long-standing bug where we would pass the unit test
param flag to lit in the standalone build even though the standalone
build *never* has the unittests built and ready for testing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159594 91177308-0d34-0410-b5e6-96231b3b80d8
@jrose-apple jrose-apple Revert "Remove unused member (& consequently unused parameter) in SA'…
…s Call code."

...and instead add an accessor. We're not using this today, but it's something
that should probably stay in the source for potential clients, and it doesn't
cost a lot. (ObjCPropertyAccess is only created on the stack, and right now
there's only ever one alive at a time.)

This reverts r159581 / commit 8e674e1.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159595 91177308-0d34-0410-b5e6-96231b3b80d8
@jrose-apple jrose-apple [analyzer] If 'super' is known to be nil, we can still mark its range.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159596 91177308-0d34-0410-b5e6-96231b3b80d8
@chandlerc chandlerc Extend a workaround for a CMake bug in LLVM's r159593 to apply to
a Clang target which hits the same bug directly.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159598 91177308-0d34-0410-b5e6-96231b3b80d8
Matt Beaumont-Gay Add a warning flag for "'extern' variable has an initializer".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159600 91177308-0d34-0410-b5e6-96231b3b80d8
@delesley delesley Thread Safety Analysis: turn off checking within trylock functions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159601 91177308-0d34-0410-b5e6-96231b3b80d8
@dwblaikie dwblaikie Improve crash reporting test coverage.
This adds validation that the
* repro source is only rewrite-includes processed, not fully preprocessed.
* repro script contains macro definitions (-DFOO=BAR).

Based on suggestions/help by Matt Beaumont-Gay.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159605 91177308-0d34-0410-b5e6-96231b3b80d8
@delesley delesley Thread safety analysis: don't warn in case of duplicate annotation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159606 91177308-0d34-0410-b5e6-96231b3b80d8
@delesley delesley Thread safety analysis: fixed incorrect error message at the end of a…
… locks_required function.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159607 91177308-0d34-0410-b5e6-96231b3b80d8
@jrose-apple jrose-apple [analyzer] Introduce CXXAllocatorCall to handle placement arg invalid…

This is NOT full-blown support for operator new, but removes some nasty
duplicated code introduced in r158784.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159608 91177308-0d34-0410-b5e6-96231b3b80d8
@delesley delesley Thread safety analysis: fixed bug that occurs when very silly people
use scoped_lockable without putting unlock_function on the

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159609 91177308-0d34-0410-b5e6-96231b3b80d8
@zygoloid zygoloid test/Driver/crash-report.c: don't fail if there are no files left beh…
…ind by a previous run of this test!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159615 91177308-0d34-0410-b5e6-96231b3b80d8
@jdennett jdennett Documentation cleanup:
* Primarily, added \brief to most of include/clang/Basic, instead of prefixing
  the comments with "DeclaredName - ";
* Made some brief summaries significantly briefer;
* Fixed up some erroneous uses of \see and \arg;
* Fixed up some extraneous backslashes in \code...\endcode blocks;
* Fixed up some typos/spelling errors.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159616 91177308-0d34-0410-b5e6-96231b3b80d8
@zygoloid zygoloid -Wuninitialized: assume that an __attribute__((returns_twice)) functi…
…on might

initialize any variable. This is extremely conservative, but is sufficient for

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159620 91177308-0d34-0410-b5e6-96231b3b80d8
Fariborz Jahanian objective-c: just as we have done for method definitions,
c-functions declared in implementation should have their 
parsing delayed until the end so, they can access forward
declared private methods. // rdar://10387088

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159626 91177308-0d34-0410-b5e6-96231b3b80d8
@akyrtzi akyrtzi [libclang] Introduce clang_Cursor_isDynamicCall which,
given a cursor pointing to a C++ method call or an ObjC message,
returns non-zero if the method/message is "dynamic", meaning:

  For a C++ method: the call is virtual.
  For an ObjC message: the receiver is an object instance, not 'super' or a
  specific class.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159627 91177308-0d34-0410-b5e6-96231b3b80d8
@jdennett jdennett Documentation cleanup: Delete a duplicated/malformed doc comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159628 91177308-0d34-0410-b5e6-96231b3b80d8
@jdennett jdennett Documentation cleanup:
* Added file header documentation with \file and \brief;
* Cleaned up existing doc comments and added/annotated \brief summaries.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159629 91177308-0d34-0410-b5e6-96231b3b80d8
@rjmccall rjmccall Significantly simplify CGExprAgg's logic about ignored results:
if we want to ignore a result, the Dest will be null.  Otherwise,
we must copy into it.  This means we need to ensure a slot when
loading from a volatile l-value.

With all that in place, fix a bug with chained assignments into
__block variables of aggregate type where we were losing insight into
the actual source of the value during the second assignment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159630 91177308-0d34-0410-b5e6-96231b3b80d8
@chandlerc chandlerc Remove a redundant assignment to the FDecl variable from *inside* it's

I really feel like Clang should warn about this, but I can't describe
a good reason. GCC will warn on this in some cases under
-Wsequence-point, but it actually seems like a false positive for that

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159631 91177308-0d34-0410-b5e6-96231b3b80d8
@nico nico Rename -Wself-assign-memvar to -Wself-assign-field to improve local c…
…onsistency a bit.

(cf -Wunused-private-field and several other existing -field diagnostics.)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159633 91177308-0d34-0410-b5e6-96231b3b80d8
@nico nico Share ConvertUTF8toWide() between Lex and CodeGen.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159634 91177308-0d34-0410-b5e6-96231b3b80d8
Matt Beaumont-Gay Silence warning in -Asserts build
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159635 91177308-0d34-0410-b5e6-96231b3b80d8
@chapuni chapuni clang/utils/TableGen/ClangAttrEmitter.cpp: Fix abuse of StringRef (fr…
…om getValueAsString()).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159662 91177308-0d34-0410-b5e6-96231b3b80d8
@akyrtzi akyrtzi [libclang] Protect against a race condition where a thread
may be destroying an ASTUnit while cleanupOnDiskMapAtExit is
getting called.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159664 91177308-0d34-0410-b5e6-96231b3b80d8
@hfinkel hfinkel Add additional architecture defines for PPC targets.
Patch by Andy Gibbs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159665 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr CommentBriefParser: remove dead store. Found by Clang Analyzer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159673 91177308-0d34-0410-b5e6-96231b3b80d8
@delesley delesley Thread Safety Analysis: handle expressions involving temporaries,
e.g. ExprWithCleanups.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159674 91177308-0d34-0410-b5e6-96231b3b80d8
Akira Hatanaka Make the following changes in the way Mips handles vector arguments a…
…nd return


- Return integer vectors in integer registers.
- Pass vector arguments in integer registers.
- Set an upper bound for argument alignment. The largest alignment is 8-byte
  for O32 and 16-byte for N32/64.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159676 91177308-0d34-0410-b5e6-96231b3b80d8
@delesley delesley Thread safety analysis: improve handling of smart pointers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159679 91177308-0d34-0410-b5e6-96231b3b80d8
@gribozavr gribozavr CommentLexer: remove Markdown tokens from the token list (they are no…
…t emitted by lexer).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159681 91177308-0d34-0410-b5e6-96231b3b80d8
@Arnaud-de-Grandmaison Arnaud-de-Grandmaison [libclang] CompilationDatabase naming and comment fixes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159682 91177308-0d34-0410-b5e6-96231b3b80d8
@bob-wilson bob-wilson When using -pg targeting OS X 10.8, pass -no_new_main to the linker.
By default on OS X 10.8, we don't link with a crt1.o file and the linker
knows to use _main as the entry point.  But, when compiling with -pg, we
need to link with the gcrt1.o file, and the linker needs to be told to use
the "start" symbol as the entry point.  The -no_new_main linker option does
that last part.  <rdar://problem/11491405>

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159683 91177308-0d34-0410-b5e6-96231b3b80d8
David Chisnall Rename the GCC Objective-C runtime to gcc from gnu-fragile and the GN…

runtime to gnustep from gnu.  Fix EH for the GCC runtime.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159684 91177308-0d34-0410-b5e6-96231b3b80d8
Fariborz Jahanian objective-c: Refactor parse/sema portion of
objective-c's fast enumeration statement,
for more work to come.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159689 91177308-0d34-0410-b5e6-96231b3b80d8
Fariborz Jahanian Obj-C++11 parser: turn off buffering of
c-function defined in objc class
implementation for now.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159690 91177308-0d34-0410-b5e6-96231b3b80d8
Fariborz Jahanian Obj-C++11 parser: fix broken parsing of c-function
defined in class implementations.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159691 91177308-0d34-0410-b5e6-96231b3b80d8
@jrose-apple jrose-apple [analyzer] For now, don't inline non-static member overloaded operators.
Our current inlining support (specifically RegionStore::enterStackFrame)
doesn't know that calls to overloaded operators may be calls to non-static
member functions, and that in these cases the first argument should be
treated as 'this'. This caused incorrect results and sometimes crashes.

The long-term fix will be to rewrite RegionStore::enterStackFrame to use
CallEvent and its subclasses, but for now we can just disable these
problematic calls by classifying them under a new CallEvent,

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159692 91177308-0d34-0410-b5e6-96231b3b80d8
Fariborz Jahanian Obj-C++11 parser: handle a fall out of delayed
c-function parsing when a declaration with
C++0x braced-init-list is inside an @implementation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159693 91177308-0d34-0410-b5e6-96231b3b80d8
@bob-wilson bob-wilson Move a comment from the commit message into the code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159696 91177308-0d34-0410-b5e6-96231b3b80d8
@abramobagnara abramobagnara Renamed RawComment kinds to avoid name clash.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159706 91177308-0d34-0410-b5e6-96231b3b80d8
David Chisnall A few more cleanups for the GNU family of ObjC runtimes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159708 91177308-0d34-0410-b5e6-96231b3b80d8
David Chisnall Hoist the logic for selecting the Objective-C dispatch method into th…
…e runtime

class, from the target.  No functionality change, just less duplicated logic.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159710 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k CXXRecordDecl: Split getBases/getVBases into a slow and a fast path.
This avoids costly computation of getASTContext() and drops the header
dependency from DeclCXX.h to ASTContext.h.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159716 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k Split out the "empty" case for compound statement into a separate ctor.
Move the ASTContext-dependent version out of line.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159717 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k Drop the ASTContext.h include from Stmt.h and fix up transitive users.
This required moving the ctors for IntegerLiteral and FloatingLiteral out of
line which shouldn't change anything as they are usually called through Create
methods that are already out of line.

ASTContext::Deallocate has been a nop for a long time, drop it from ASTVector
and make it independent from ASTContext.h

Pass the StorageAllocator directly to AccessedEntity so it doesn't need to
have a definition of ASTContext around.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159718 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k Remove get(V)BaseClassOffsetInBits, the CharUnit functions should be …
…used instead.

No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159719 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k Drop the ASTContext.h include from DeclFriend.h and DeclTemplate.h.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159723 91177308-0d34-0410-b5e6-96231b3b80d8
@d0k d0k Update unittests for include change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159724 91177308-0d34-0410-b5e6-96231b3b80d8
@krasin krasin Merge branch 'master' into dcpu16

Blei commented Jul 5, 2012

LGTM. Waiting for decision on llvm-dcpu16/llvm-dcpu16#193.

@Blei Blei added a commit that referenced this pull request Jul 5, 2012

@Blei Blei Merge pull request #20 from krasin/dcpu16
Update clang to the upstream tip

@Blei Blei merged commit 4b960e0 into llvm-dcpu16:dcpu16 Jul 5, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment