| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
reported by Richard Smith.
llvm-svn: 151993
|
|
|
|
|
|
|
|
|
| |
scalar emission of DeclRefExprs to const bools: emit scalar bools as i1,
not as i8.
In addition to the extra unit testing, this has successfully bootstrapped.
llvm-svn: 151955
|
|
|
|
|
|
| |
types of the pointer arguments.
llvm-svn: 151927
|
|
|
|
|
|
|
|
| |
variables in contexts where there" and "Fix buildbot: make this test less dependent on the value names in the produced IR."
They broke bootstrap.
llvm-svn: 151922
|
|
|
|
|
|
|
| |
is no odr-use of the variable. Go slightly beyond what the standard requires
for variables of reference type.
llvm-svn: 151879
|
|
|
|
|
|
| |
says.
llvm-svn: 151853
|
|
|
|
|
|
|
|
|
|
| |
This flag enables ThreadSanitizer instrumentation committed to llvm as r150423.
The patch includes one test for -fthread-sanitizer and one similar test for -faddress-sanitizer.
This patch does not modify the linker flags (as we do it for -faddress-sanitizer) because the run-time library is not yet
committed and it's structure in compiler-rt is not 100% clear.
The users manual wil be changed in a separate commit.
llvm-svn: 151846
|
|
|
|
|
|
|
|
| |
correctly.
Still rdar://10900684
llvm-svn: 151838
|
|
|
|
|
|
|
|
| |
generated block literal for lambdas which are immediately converted to block pointer type. This simplifies the AST, avoids an unnecessary copy of the lambda and makes it much easier to avoid copying the result onto the heap.
Note that this transformation has a substantial semantic effect outside of ARC: it gives the converted lambda lifetime semantics similar to a block literal. With ARC, the effect is much less obvious because the lifetime of blocks is already managed.
llvm-svn: 151797
|
|
|
|
|
|
|
|
|
| |
by the BAA pass, which uses the default TargetLibraryInfo constructor.
Unfortunately, the default TargetLibraryInfo constructor assumes all library
calls are available and thus ignores -fno-builtin.
rdar://10947759
llvm-svn: 151745
|
|
|
|
|
|
| |
info.", which broke some -O0 -g tests.
llvm-svn: 151730
|
|
|
|
|
|
|
|
|
|
|
|
| |
This currently doesn't handle capturing the 'this' pointer for any
enclosing class.
Steal the lambda-expressions.cpp testcase and debugify it and try
to use more variables to proof it against random changes.
Part of rdar://10900684
llvm-svn: 151702
|
|
|
|
| |
llvm-svn: 151700
|
|
|
|
|
|
| |
conversions. PR12121.
llvm-svn: 151674
|
|
|
|
|
|
| |
here, and generally nicer to the optimizer.
llvm-svn: 151659
|
|
|
|
| |
llvm-svn: 151631
|
|
|
|
|
|
| |
conversion-to-block-pointer outside of ARC. Testcases coming up soon.
llvm-svn: 151603
|
|
|
|
| |
llvm-svn: 151586
|
|
|
|
|
|
| |
<rdar://problem/10938628>
llvm-svn: 151549
|
|
|
|
|
|
| |
Fixes rdar://10934887
llvm-svn: 151519
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- variant members with nontrivial destructors make the containing class's
destructor deleted
- check for a virtual destructor after checking for overridden methods in the
base class(es)
- check for an inaccessible operator delete for a class with a virtual
destructor.
Do not try to call an anonymous union field's destructor from the destructor of
the containing class.
llvm-svn: 151483
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This emits a backing array with internal linkage and fills it with data,
then has the initializer_list point at the array. Dynamic initialization
and global destructors are correctly supported.
What doesn't work is nested initializer_lists. I have no idea how to
get them to work, either. However, these should be very rare, and so
I'll just call it a known bug and declare generalized initializers
DONE!
llvm-svn: 151457
|
|
|
|
| |
llvm-svn: 151456
|
|
|
|
|
|
| |
rdar://10921594
llvm-svn: 151430
|
|
|
|
|
|
| |
implement the retain+autorelease outside of ARC, and there's a bug that causes the generated code to crash in ARC (which I think is unrelated to my code, although I'm not completely sure).
llvm-svn: 151428
|
|
|
|
| |
llvm-svn: 151414
|
|
|
|
| |
llvm-svn: 151412
|
|
|
|
| |
llvm-svn: 151407
|
|
|
|
|
|
|
| |
enumeration type with a fixed underlying type is complete. Fixes
<rdar://problem/10916155>.
llvm-svn: 151403
|
|
|
|
|
|
| |
test case that only runs on debug builds.
llvm-svn: 151311
|
|
|
|
|
|
| |
isTrivial() call.
llvm-svn: 151259
|
|
|
|
|
|
| |
forget the vptrs.
llvm-svn: 151245
|
|
|
|
|
|
|
|
| |
<rdar://problem/10907510>, and makes the ASTs a bit more self-consistent.
(I've chosen to keep the qualifiers, but it isn't a strong preference; if anyone prefers removing them, please yell.)
llvm-svn: 151229
|
|
|
|
| |
llvm-svn: 151217
|
|
|
|
| |
llvm-svn: 151216
|
|
|
|
| |
llvm-svn: 151203
|
|
|
|
| |
llvm-svn: 151172
|
|
|
|
|
|
| |
face of exceptions yet.
llvm-svn: 151171
|
|
|
|
| |
llvm-svn: 151150
|
|
|
|
|
|
| |
<rdar://problem/10907547>.
llvm-svn: 151133
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
block pointer that returns a block literal which captures (by copy)
the lambda closure itself. Some aspects of the block literal are left
unspecified, namely the capture variable (which doesn't actually
exist) and the body (which will be filled in by IRgen because it can't
be written as an AST).
Because we're switching to this model, this patch also eliminates
tracking the copy-initialization expression for the block capture of
the conversion function, since that information is now embedded in the
synthesized block literal. -1 side tables FTW.
llvm-svn: 151131
|
|
|
|
|
|
| |
the patch.
llvm-svn: 151122
|
|
|
|
| |
llvm-svn: 151010
|
|
|
|
| |
llvm-svn: 150996
|
|
|
|
|
|
|
| |
the 'invariant.load' metadata tag onto those loads.
// rdar://10840980
llvm-svn: 150994
|
|
|
|
|
|
|
|
|
|
| |
handled by the caching and rauw. Also fix one cache that wasn't
being added to highlighted by this patch. Update all testcases
accordingly.
This should fix the deall failure.
llvm-svn: 150977
|
|
|
|
|
|
|
| |
temporary forward declaration nodes. Fixes a problem building
Chrome.
llvm-svn: 150976
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
match the behavior of GCC. Also add a test for these intrinsics, which
apparently have *zero* tests. =[ Not surprisingly, Clang crashed when
compiling these.
Fix the bug in CodeGen where we failed to bitcast the argument type to
x86mmx prior to calling the LLVM intrinsic. This fixes an assert on the
new 3dnow-builtins.c test.
This is one issue impacting the efforts to get Clang to emulate the
Microsoft intrinsics headers -- 3dnow intrinsics are implictitly made
available there.
llvm-svn: 150948
|
|
|
|
| |
llvm-svn: 150931
|
|
|
|
| |
llvm-svn: 150930
|