| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 203196
|
| |
|
|
| |
llvm-svn: 203195
|
| |
|
|
|
|
| |
and '||' branches involving configuration values.
llvm-svn: 203194
|
| |
|
|
|
|
| |
literal types.
llvm-svn: 203193
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the clang diagnostic has to report a column number one less than the correct
value in order for the IDE to move the cursor to the expected location. This
behavior is changed in VS2012 and VS2013 so that the IDE is now expecting the
column number to match the actual source location.
Before: source(line, column-1): type: message
After: source(line, column): type: message
This patch changes -fdiagnostics-format=msvc to match the new VS2012 and VS2013
when fmsc-version is 1700 or greater.
Differential Revision: http://llvm-reviews.chandlerc.com/D2949
llvm-svn: 203183
|
| |
|
|
|
|
| |
out-of-tree builds are using redecls_begin()/redecls_end(), so adding some machinery back in to support them.
llvm-svn: 203182
|
| |
|
|
|
|
| |
iterator_range redecls(). Updating all of the usages of the iterators with range-based for loops, which allows the begin/end forms to be removed entirely.
llvm-svn: 203179
|
| |
|
|
|
|
|
|
| |
getTypeSize (which rounds up sizes) in order to issue diagnostics
when casting to mismatched vector sizes; instead of crashing in IRGen.
// rdar:// 16196902. Reviewed offline by John McCall.
llvm-svn: 203175
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
LLVM currently has a hack (shouldEmitUsedDirectiveFor) that causes it to not
print no_dead_strip for symbols starting with 'l' or 'L'. These are exactly the
ones that the clang's objc codegen is producing. The net result, is that it is
equivalent to llvm.compiler.used.
The need for putting the private symbol in llvm.compiler.used should be clear
(the objc runtime uses them). The reason for also putting the weak symbols in
it is for LTO: ld64 will not ask us to preserve the it.
llvm-svn: 203172
|
| |
|
|
| |
llvm-svn: 203170
|
| |
|
|
| |
llvm-svn: 203169
|
| |
|
|
|
|
|
|
| |
This patch fixes PR18964. In linkage computation, assertion fails when
an old invalid declaration's linkage mismatches with the current
decl's one.
llvm-svn: 203168
|
| |
|
|
|
|
| |
Found by -Wunreachable-code.
llvm-svn: 203167
|
| |
|
|
|
|
|
| |
These tests were added before we had settled on using a .profdata extension
for the profile data files. Renaming them now for consistency.
llvm-svn: 203166
|
| |
|
|
|
|
|
| |
I added this "STF" variable without noticing that all the other counter names
end with a "C". Renaming it to "STC" for consistency.
llvm-svn: 203165
|
| |
|
|
|
|
|
| |
Use the new getObjectFormat/setObjectFormat instead of Environment now that the
file format is a separate field.
llvm-svn: 203161
|
| |
|
|
| |
llvm-svn: 203158
|
| |
|
|
| |
llvm-svn: 203157
|
| |
|
|
|
|
| |
correct if MaxEditDistance were increased to something greater than 1).
llvm-svn: 203153
|
| |
|
|
|
|
|
|
|
| |
If a guard variable will be created for an entity at global scope,
then we cannot rely on the scope depth to disambiguate names for us.
Instead, mangle the entire variable into the guard to ensure it's uniqueness.
llvm-svn: 203151
|
| |
|
|
|
|
|
|
| |
CallingContext, but none of the other optional parameters are. Removing the optional parameters, and making the NamedDecl required.
No functional changes intended.
llvm-svn: 203149
|
| |
|
|
|
|
|
|
| |
an SExprNode and returning the position in which it was inserted.
No functional change intended.
llvm-svn: 203148
|
| |
|
|
| |
llvm-svn: 203147
|
| |
|
|
|
|
|
| |
Initializers and finalizers for static data members have the variable's
access-specifier, storage-class, type and CV-qualifiers mangled in.
llvm-svn: 203145
|
| |
|
|
| |
llvm-svn: 203144
|
| |
|
|
|
|
|
|
| |
This reverts commit r203059.
Revert while we discuss what does it mean to be private and weak.
llvm-svn: 203141
|
| |
|
|
| |
llvm-svn: 203140
|
| |
|
|
|
|
|
| |
This should help avoid problems like the buildbot fallout from my change in
r203085. I left the CodeGenCXX tests alone for now.
llvm-svn: 203131
|
| |
|
|
|
|
| |
Patch by Jonathan Sauer, with a little editing by me.
llvm-svn: 203128
|
| |
|
|
|
|
|
|
| |
in TypePrinter::printObjCObjectPointerBefore.
Suggested by Jordan.
llvm-svn: 203124
|
| |
|
|
| |
llvm-svn: 203123
|
| |
|
|
|
|
|
|
| |
specifiers where not needed.
No functional changes intended.
llvm-svn: 203122
|
| |
|
|
|
|
|
|
| |
switch statement, so now there is only one style used in this block of code, instead of three or more styles.
No functional change intended.
llvm-svn: 203120
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Added an inserter for ArrayRef<SourceRange>, as it is already needed in at least
two places (static analyzer and clang-tidy).
Reviewers: jordan_rose
CC: cfe-commits, gribozavr
Differential Revision: http://llvm-reviews.chandlerc.com/D2984
llvm-svn: 203117
|
| |
|
|
|
|
| |
simd' support)
llvm-svn: 203114
|
| |
|
|
| |
llvm-svn: 203108
|
| |
|
|
|
|
| |
which includes those with all cases covered but with no 'default:'.
llvm-svn: 203094
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This expected;
; Function Attrs: uwtable
define internal void @"\01+[A foreach:]"(i8* %self, i8* %_cmd, %0* %array) #0 {
But the Name is mangled on other hosts; (x86_64-unknown-unknown)
; Function Attrs: nounwind uwtable
define internal void @_c_A__foreach_(i8* %self, i8* %_cmd, %1* %array) #0 {
llvm-svn: 203092
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
dominated by a 'noreturn' call, where literal becomes an std::string.
I have mixed feelings about this one. It's used all over the codebase,
and is analogous to the current heuristic for ordinary C string literals.
This requires some ad hoc pattern matching of the AST. While the
test case mirrors what we see std::string in libc++, it's not really
testing the libc++ headers.
llvm-svn: 203091
|
| |
|
|
| |
llvm-svn: 203090
|
| |
|
|
| |
llvm-svn: 203087
|
| |
|
|
| |
llvm-svn: 203085
|
| |
|
|
| |
llvm-svn: 203081
|
| |
|
|
| |
llvm-svn: 203080
|
| |
|
|
|
|
| |
inconsistent, making this hard to see.
llvm-svn: 203079
|
| |
|
|
| |
llvm-svn: 203078
|
| |
|
|
| |
llvm-svn: 203077
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In addition, for all functions, use the name from the llvm::Function to
identify the function in the profile data. Compute that "function name",
including the file name for local functions, once when assigning the PGO
counters and store it in the CodeGenPGO class.
Move the code to add InlineHint and Cold attributes out of StartFunction(),
because the "function name" string isn't available at that point.
llvm-svn: 203075
|
| |
|
|
|
|
|
|
|
|
|
|
| |
For C++ functions, we will continue to use the mangled name to identify
functions in the PGO profile data, but this name is confusing for things like
Objective-C methods. For functions with local linkage, we're also going to
include the file name to help distinguish those functions, so this changes to
use more generic variable names.
No functional changes.
llvm-svn: 203074
|
| |
|
|
|
|
|
|
|
|
|
| |
Move the PGO.assignRegionCounters() call out of StartFunction, because that
function is called from many places where it does not make sense to do PGO
instrumentation (e.g., compiler-generated helper functions). Change several
functions to take a StringRef argument for the unique name associated with
a function, so that the name can be set differently for things like Objective-C
methods and block literals.
llvm-svn: 203073
|