llvm-project/clang/test/CodeGenCXX
Chandler Carruth ff0e3a1e1c Rework the bitfield access IR generation to address PR13619 and
generally support the C++11 memory model requirements for bitfield
accesses by relying more heavily on LLVM's memory model.

The primary change this introduces is to move from a manually aligned
and strided access pattern across the bits of the bitfield to a much
simpler lump access of all bits in the bitfield followed by math to
extract the bits relevant for the particular field.

This simplifies the code significantly, but relies on LLVM to
intelligently lowering these integers.

I have tested LLVM's lowering both synthetically and in benchmarks. The
lowering appears to be functional, and there are no really significant
performance regressions. Different code patterns accessing bitfields
will vary in how this impacts them. The only real regressions I'm seeing
are a few patterns where the LLVM code generation for loads that feed
directly into a mask operation don't take advantage of the x86 ability
to do a smaller load and a cheap zero-extension. This doesn't regress
any benchmark in the nightly test suite on my box past the noise
threshold, but my box is quite noisy. I'll be watching the LNT numbers,
and will look into further improvements to the LLVM lowering as needed.

llvm-svn: 169489
2012-12-06 11:14:44 +00:00
..
2003-11-02-WeakLinkage.cpp Migrate, FileCheckize and update: 2011-08-20 00:17:18 +00:00
2003-11-18-PtrMemConstantInitializer.cpp Migrate, FileCheckize and update: 2011-08-20 00:17:18 +00:00
2003-11-27-MultipleInheritanceThunk.cpp Migrate, FileCheckize and update: 2011-08-20 00:17:18 +00:00
2003-11-29-DuplicatedCleanupTest.cpp Migrate, FileCheckize and update: 2011-08-20 00:17:18 +00:00
2003-12-08-ArrayOfPtrToMemberFunc.cpp Migrate, FileCheckize and update: 2011-08-20 00:17:18 +00:00
2004-01-11-DynamicInitializedConstant.cpp Migrate, FileCheckize and update: 2011-08-20 00:17:18 +00:00
2004-03-08-ReinterpretCastCopy.cpp Migrate, FileCheckize and update: 2011-08-20 00:09:39 +00:00
2004-03-09-UnmangledBuiltinMethods.cpp Migrate, FileCheckize and update: 2011-08-20 00:09:39 +00:00
2004-03-15-CleanupsAndGotos.cpp Migrate, FileCheckize and update: 2011-08-20 00:09:39 +00:00
2004-06-08-LateTemplateInstantiation.cpp Migrate, FileCheckize and update: 2011-08-20 00:09:39 +00:00
2004-09-27-DidntEmitTemplate.cpp Migrate, FileCheckize and update: 2011-08-20 00:09:39 +00:00
2004-11-27-ExceptionCleanupAssertion.cpp Migrate, FileCheckize and update: 2011-08-20 00:09:39 +00:00
2004-11-27-FriendDefaultArgCrash.cpp Migrate, FileCheckize and update: 2011-08-20 00:09:39 +00:00
2005-01-03-StaticInitializers.cpp clang/test: [PR8833] Introduce the feature "LP64" to suppress LLP64-incompatible tests. 2012-09-12 10:45:40 +00:00
2005-02-11-AnonymousUnion.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2005-02-13-BadDynamicInit.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2005-02-14-BitFieldOffset.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2005-02-19-BitfieldStructCrash.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2005-02-19-UnnamedVirtualThunkArgument.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2005-02-20-BrokenReferenceTest.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2006-03-01-GimplifyCrash.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2006-03-06-C++RecurseCrash.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2006-09-12-OpaqueStructCrash.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2006-10-30-ClassBitfield.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2006-11-20-GlobalSymbols.cpp Modify the check line to be happier on windows. 2011-08-19 23:46:18 +00:00
2006-11-30-ConstantExprCrash.cpp Migrate, FileCheckize and update: 2011-08-19 23:41:35 +00:00
2007-01-02-UnboundedArray.cpp Migrate 2007-01-02-UnboundedArray.cpp from llvm/test/FrontendC++. 2011-08-19 23:15:04 +00:00
2007-01-06-PtrMethodInit.cpp This test isn't portable to non-x86 platforms; specify a triple. 2011-11-08 19:55:32 +00:00
2007-04-05-PackedBitFields-1.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-04-05-PackedBitFieldsOverlap-2.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-04-05-PackedBitFieldsOverlap.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-04-05-PackedBitFieldsSmall.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-04-05-StructPackedFieldUnpacked.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-04-10-PackedUnion.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-04-14-FNoBuiltin.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-05-03-VectorInit.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-07-29-RestrictPtrArg.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-07-29-RestrictRefArg.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-09-10-RecursiveTypeResolution.cpp Migrate: 2011-08-19 23:08:33 +00:00
2007-10-01-StructResize.cpp Migrate 2007-10-01-StructResize.cpp from llvm/test/FrontendC++. 2011-08-19 22:25:02 +00:00
2008-01-12-VecInit.cpp Migrate 2008-01-12-VecInit.cpp from llvm/test/FrontendC++. 2011-08-19 22:16:30 +00:00
2008-05-07-CrazyOffsetOf.cpp Migrate 2008-05-07-CrazyOffsetOf.cpp from llvm/test/FrontendC++. 2011-08-19 22:16:28 +00:00
2009-03-17-dbg.cpp Try removing xfail and xtarget to see if this brings back a couple of bots. 2011-08-19 23:17:46 +00:00
2009-04-23-bool2.cpp Migrate 2009-04-23-bool2.cpp from llvm/test/FrontendC++. 2011-08-19 22:16:21 +00:00
2009-05-04-PureConstNounwind.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
2009-06-16-DebugInfoCrash.cpp Migrate 2009-06-16-DebugInfoCrash.cpp from llvm/test/FrontendC++. 2011-08-19 21:51:07 +00:00
2009-07-16-Using.cpp Migrate 2009-07-16-Using.cpp from llvm/test/FrontendC++. 2011-08-19 21:51:01 +00:00
2009-08-05-ZeroInitWidth.cpp Migrate 2009-08-05-ZeroInitWidth.cpp from llvm/test/FrontendC++. 2011-08-19 21:51:03 +00:00
2009-08-11-VectorRetTy.cpp Migrate 2009-08-11-VectorRetTy.cpp from llvm/test/FrontendC++. 2011-08-19 21:50:59 +00:00
2009-09-09-packed-layout.cpp Migrate 2009-09-09-packed-layout.cpp test from llvm/test/FrontendC++. 2011-08-19 21:24:41 +00:00
2009-10-27-crash.cpp Migrate 2009-10-27-crash.cpp from llvm/test/FrontendC++. 2011-08-19 21:24:39 +00:00
2009-12-23-MissingSext.cpp Rework the bitfield access IR generation to address PR13619 and 2012-12-06 11:14:44 +00:00
2010-03-09-AnonAggregate.cpp More then one anonymous aggregates on one line creates chaos when MDNode uniquness is combined with RAUW operation. Right solution is to avoid using RAUW. 2010-03-09 21:32:27 +00:00
2010-05-10-Var-DbgInfo.cpp Migrate test from llvm/test/FrontendC++. 2011-08-16 21:41:54 +00:00
2010-05-11-alwaysinlineinstantiation.cpp Migrate from llvm/test/FrontendC++ and FileCheckize. 2011-08-16 21:41:52 +00:00
2010-05-12-PtrToMember-Dbg.cpp Migrate from llvm/test/FrontendC++. 2011-08-16 21:41:50 +00:00
2010-06-21-LocalVarDbg.cpp Migrate test from llvm/test/FrontendC++ and FileCheckize. 2011-08-16 21:41:48 +00:00
2010-06-22-BitfieldInit.cpp Migrate test from llvm/test/FrontendC++. 2011-08-16 21:41:46 +00:00
2010-06-22-ZeroBitfield.cpp Migrate from llvm/test/FrontendC++. 2011-08-16 21:41:44 +00:00
2010-07-23-DeclLoc.cpp Migrate from llvm/test/FrontendC++. 2011-08-16 21:41:41 +00:00
2011-12-19-init-list-ctor.cpp Revert r146766, and add a testcase for which it introduced a wrong-code bug. 2011-12-20 04:00:21 +00:00
2012-02-06-VecInitialization.cpp Test for r149855. 2012-02-06 08:31:19 +00:00
2012-03-16-StoreAlign.cpp Make the storing variable's name generic. 2012-03-16 23:37:23 +00:00
DynArrayInit.cpp tests: Rewrite test to check intent instead of implementation. 2010-06-28 17:43:18 +00:00
PR4827-cast.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
PR4983-constructor-conversion.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
PR5050-constructor-conversion.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
PR5093-static-member-function.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
PR5834-constructor-conversion.cpp When converting from a type to itself or one of its base classes via a 2009-12-22 00:21:20 +00:00
PR5863-unreachable-block.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
PR6474.cpp Use -emit-llvm-only, to avoid leaving a temp around. 2010-03-11 18:23:02 +00:00
__null.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
abstract-class-ctors-dtors.cpp Disable the optimization that skips emission of complete, non-virtual 2011-07-26 23:18:30 +00:00
address-of-fntemplate.cpp When determining a standard conversion sequence involves resolving the 2010-04-29 18:24:40 +00:00
alloca-align.cpp X86-64: 2010-06-28 19:56:59 +00:00
anonymous-namespaces.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
anonymous-union-member-initializer.cpp Fix an assertion failure with a C++ constructor initializing a 2012-08-08 03:51:37 +00:00
apple-kext-guard-variable.cpp rename -ccc-host-triple into -target 2012-01-20 22:01:23 +00:00
apple-kext-indirect-call-2.C More work to support -fapple-kext regarding 2011-01-28 23:42:29 +00:00
apple-kext-indirect-call.C Move cheking of kext into canDevirtualizeMemberFunctionCalls(). 2011-01-21 01:04:41 +00:00
apple-kext-indirect-virtual-dtor-call.cpp -fapple-kext, elimination of all direct calls to virtual dtors. 2011-02-02 23:12:46 +00:00
apple-kext-linkage.C In apple-kext mode, use external linkage for explicit template instantiations 2011-09-19 18:05:26 +00:00
apple-kext-no-staticinit-section.C In -fapple-kext mode, global object construction code 2011-02-15 18:54:46 +00:00
apple-kext.cpp Fix a trivial oversight with apple-kext static local destructors 2012-04-13 02:53:27 +00:00
arm-cc.cpp Change the test for which ABI/CC to use on ARM to be base on the environment 2010-06-16 19:01:17 +00:00
arm.cpp Use atexit when __cxa_atexit isn't available instead of adding a 2012-04-06 18:21:06 +00:00
array-construction.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
array-operator-delete-call.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
array-pointer-decay.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
array-value-initialize.cpp add missing newlines at end of file. 2010-12-21 02:36:58 +00:00
asm.cpp Properly handle temporaries that are created in a AsmStmt. 2010-11-02 02:33:08 +00:00
assign-construct-memcpy.cpp CodeGen: Copy tail padding when we're not dealing with a trivial copy assign or move assign operator. 2012-09-30 12:43:37 +00:00
assign-operator.cpp Remove another questionable use of hasTrivial*. The relevant thing for this 2012-11-14 00:50:40 +00:00
atomic.cpp When checking a call to a builtin atomic operation, be sure to 2011-11-28 16:30:08 +00:00
atomicinit.cpp Fix some i1/i8 confusion within _Atomic(bool) in IR generation, both 2012-04-12 20:42:30 +00:00
attr-used.cpp Whack a bunch of tests in CodeGenCXX to work on ARM (using ARM ABI). Batch 1 of 3 or so. 2011-06-13 22:51:21 +00:00
attr.cpp PR13941: Mark all virtual functions as unnamed_addr. It's not possible to 2012-09-28 22:46:07 +00:00
bitfield-layout.cpp Simplify wide bit-field layout in CGRecordLayoutBuilder, and also fix a bug where assigning to a bit-field member would overwrite other parts of the struct. 2010-04-17 22:54:57 +00:00
bitfield.cpp Rework the bitfield access IR generation to address PR13619 and 2012-12-06 11:14:44 +00:00
block-byref-cxx-objc.cpp Don't enter cleanups for unreachable variables. It's impossible to 2012-04-13 18:44:05 +00:00
block-destruct.cpp Fixes a Code Gen. Crash when calling destructor on a __block 2010-05-04 00:26:07 +00:00
block-in-ctor-dtor.cpp block literal irgen: several improvements on naming block 2012-06-26 16:06:38 +00:00
block.cpp Don't crash (assert failure) when generating blocks for C++ types with a non-const copy constructor. 2012-04-04 13:07:13 +00:00
blocks-cxx11.cpp Unify the BlockDeclRefExpr and DeclRefExpr paths so that 2012-03-10 03:05:10 +00:00
blocks.cpp block literal irgen: several improvements on naming block 2012-06-26 16:06:38 +00:00
builtins.cpp Change the representation of builtin functions in the AST 2012-08-31 00:14:07 +00:00
c-linkage.cpp Fixes a code gen. bug by removing an assert. 2010-04-20 22:02:31 +00:00
c99-variable-length-array.cpp Don't stack-allocate an IntegerLiteral which can be referred to after the current method returns. PR11744, part 2. 2012-01-25 23:20:27 +00:00
call-arg-zero-temp.cpp These tests require particular registered targets. Declared as such. 2011-06-03 22:24:54 +00:00
cast-conversion.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
casts.cpp Make sure that reinterpret_cast gets a CastKind on all successful 2009-12-22 22:47:22 +00:00
catch-undef-behavior.cpp [ubsan] Add flag to enable recovery from checks when possible. 2012-12-02 19:50:33 +00:00
class-layout.cpp Add a missing check in CodeGen of packed classes with vtables. <rdar://problem/11324125>. 2012-04-27 02:34:46 +00:00
compound-literals.cpp Fix ABI dependent tests by providing an explicit target triple. 2012-09-19 18:46:03 +00:00
condition.cpp Revise cleanup IR generation to fix a major bug with cleanups (PR7686) 2010-07-23 21:56:41 +00:00
conditional-expr-lvalue.cpp Since the 'is aliased' bit is critical for correctness in C++, it 2011-08-26 07:31:35 +00:00
conditional-gnu-ext.cpp Fix a crash for an edge case of the GNU ?: extension. 2012-01-25 05:04:17 +00:00
conditional-temporaries.cpp Update test. 2010-02-04 17:29:32 +00:00
const-base-cast.cpp Constant expression evaluation: add support for evaluation of member pointers 2011-11-17 22:56:20 +00:00
const-global-linkage.cpp DR1511: A const volatile global does not implicitly get internal linkage like a 2012-10-19 06:37:48 +00:00
const-init-cxx11.cpp DR1472: A reference isn't odr-used if it has preceding initialization, 2012-10-20 01:38:33 +00:00
const-init.cpp Allow constant-folding of references which were formed in a manner not permitted 2012-01-12 06:08:57 +00:00
constructor-attr.cpp In addition to in-class member functions marked with the "used" 2011-02-19 21:54:50 +00:00
constructor-conversion.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
constructor-convert.cpp When performing a user-defined conversion via a constructor, be sure 2011-10-10 22:41:00 +00:00
constructor-default-arg.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
constructor-direct-call.cpp Fix newlines. 2011-01-18 05:36:08 +00:00
constructor-for-array-members.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
constructor-init-reference.cpp Turn access control on by default in -cc1. 2010-04-09 19:03:51 +00:00
constructor-init.cpp PR13273: When performing list-initialization with an empty initializer list, 2012-07-05 08:39:21 +00:00
constructor-template.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
constructors.cpp Don't build member initializers for zero-length or incomplete arrays, 2011-11-02 23:04:16 +00:00
conversion-function.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
conversion-operator-base.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
convert-to-fptr.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
copy-assign-synthesis-1.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
copy-assign-synthesis-2.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
copy-assign-synthesis-3.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
copy-assign-synthesis.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
copy-assign-volatile-synthesis.cpp Don't emit memcpy for copying fields of arrays of volatile elements. 2011-08-09 00:26:11 +00:00
copy-constructor-elim-2.cpp Provide fixed target triples to make test results consistent across ARM hosts. 2012-09-10 23:06:08 +00:00
copy-constructor-elim.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
copy-constructor-synthesis-2.cpp Whack a bunch of tests in CodeGenCXX to work on ARM (using ARM ABI). Batch 1 of 3 or so. 2011-06-13 22:51:21 +00:00
copy-constructor-synthesis.cpp Move unnamed_addr after the function arguments on Sabre's request. 2011-01-25 19:10:24 +00:00
copy-in-cplus-object.cpp Block Code Gen. API. Call destructor on descriptior 2010-06-08 20:57:22 +00:00
copy-initialization.cpp clang side to match the LLVM IR type system rewrite patch. 2011-07-09 17:41:47 +00:00
cxx-apple-kext.cpp rename -ccc-host-triple into -target 2012-01-20 22:01:23 +00:00
cxx-block-objects.cpp Block API patch to do copy ctor of copied-in cxx objects in 2010-11-13 21:53:34 +00:00
cxx0x-defaulted-templates.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
cxx0x-delegating-ctors.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
cxx0x-initializer-array.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
cxx0x-initializer-constructors.cpp Provide fixed target triples to make test results consistent across ARM hosts. 2012-09-10 23:06:08 +00:00
cxx0x-initializer-references.cpp Provide fixed target triples to make test results consistent across ARM hosts. 2012-09-10 23:06:08 +00:00
cxx0x-initializer-scalars.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
cxx0x-initializer-stdinitializerlist-pr12086.cpp Hack in a loud error for PR12086. Better than a silent miscompile. 2012-02-27 23:20:01 +00:00
cxx0x-initializer-stdinitializerlist-startend.cpp Provide fixed target triples to make test results consistent across ARM hosts. 2012-09-10 23:06:08 +00:00
cxx0x-initializer-stdinitializerlist.cpp Provide fixed target triples to make test results consistent across ARM hosts. 2012-09-10 23:06:08 +00:00
cxx11-exception-spec.cpp PR 12586: Fix assert while running libc++ testsuite: deal with exception 2012-04-19 00:08:28 +00:00
cxx11-initializer-aggregate.cpp Slightly generalize FileCheck patterns to unbreak -Asserts builds. 2012-05-14 22:06:02 +00:00
cxx11-special-members.cpp PR14279: Work around this major miscompilation by treating move operations as 2012-11-14 07:36:28 +00:00
cxx11-unrestricted-union.cpp Add a pile of tests for unrestricted unions, and advertise support for them. 2012-03-03 23:51:05 +00:00
cxx11-user-defined-literal.cpp Support for raw and template forms of numeric user-defined literals, 2012-03-09 08:00:36 +00:00
cxx11-vtable-key-function.cpp Flesh out test for defaulted key functions a bit more. 2012-08-03 15:43:22 +00:00
debug-info-artificial-arg.cpp Reapply: 2012-09-12 23:36:49 +00:00
debug-info-blocks.cpp Initialize debug info for special cases of functions that lack declarations and are generated by Clang (global initializers/destructors, thunks) . Fixes PR13942. 2012-10-25 10:18:50 +00:00
debug-info-byval.cpp Update test. 2011-11-09 12:43:30 +00:00
debug-info-char16.cpp Update tests so that they don't rely upon LLVMDebugVersion number. 2012-02-03 23:58:39 +00:00
debug-info-class.cpp Emit debug info for C++ struct definitions as DW_TAG_structure_type (instead of class_type). 2012-11-02 23:40:00 +00:00
debug-info-context.cpp Testcase for PR11345. 2012-01-20 22:10:18 +00:00
debug-info-ctor.cpp Revert r110936; this fails on clang-i686-darwin10 too. 2010-08-12 18:57:17 +00:00
debug-info-ctor2.cpp Mark explict methods as explict in debug info. 2010-10-01 23:32:17 +00:00
debug-info-cxx0x.cpp PR13570: When an unresolved overloaded call appeared in a dependent context, we 2012-08-13 21:29:18 +00:00
debug-info-determinism.cpp Fix non-deterministic iteration order when walking the specializations 2012-05-03 23:49:05 +00:00
debug-info-dup-fwd-decl.cpp Add in a caching mechanism so that forward declarations are replaced 2012-02-18 00:50:17 +00:00
debug-info-enum-class.cpp Make sure to generate the right kind of MDNode for enum forward declarations. 2012-10-05 01:49:33 +00:00
debug-info-enum.cpp Test case for llvm r110712. 2010-08-10 20:01:51 +00:00
debug-info-flex-member.cpp Use the 'count' attribute to calculate the upper bound of an array. 2012-12-04 21:33:58 +00:00
debug-info-fn-template.cpp Fix PR11073 by adding the argument type information to the decl we construct 2011-10-21 23:30:10 +00:00
debug-info-friend.cpp Debug info for friends! 2010-08-27 17:47:47 +00:00
debug-info-fwd-ref.cpp Emit debug info for C++ struct definitions as DW_TAG_structure_type (instead of class_type). 2012-11-02 23:40:00 +00:00
debug-info-gline-tables-only.cpp This patch adds a new Clang compiler flag "-gline-tables-only". 2012-05-04 07:39:27 +00:00
debug-info-global-ctor-dtor.cpp Initialize debug info for special cases of functions that lack declarations and are generated by Clang (global initializers/destructors, thunks) . Fixes PR13942. 2012-10-25 10:18:50 +00:00
debug-info-globalinit.cpp Add a new option for and disable column number information as there 2012-10-18 21:52:18 +00:00
debug-info-large-constant.cpp Add target triple. 2011-01-06 22:30:05 +00:00
debug-info-limit-type.cpp Temporarily walk back a few of my recent debug info limiting changes 2012-02-13 14:56:11 +00:00
debug-info-limit.cpp Elide copy construction in new expressions. PR11757. 2012-02-16 22:45:48 +00:00
debug-info-member.cpp tests: Remove some stray and unused -cc1 flags. These tests appear to be written 2011-11-05 05:41:57 +00:00
debug-info-method-spec.cpp tests: Remove some stray and unused -cc1 flags. These tests appear to be written 2011-11-05 05:41:57 +00:00
debug-info-method.cpp tests: Remove some stray and unused -cc1 flags. These tests appear to be written 2011-11-05 05:41:57 +00:00
debug-info-method2.cpp Update tests so that they don't rely upon LLVMDebugVersion number. 2012-02-03 23:58:39 +00:00
debug-info-namespace.cpp test/CodeGenCXX/debug-info-namespace.cpp: Add explicit -fverbose-asm to cc1 to let cygming pass. 2011-05-02 04:49:53 +00:00
debug-info-nullptr.cpp Forward declarations should take a context. This helps the debugger 2012-04-23 19:00:24 +00:00
debug-info-pubtypes.cpp Make the test less sensitive to DWARF emission implementation details. 2012-11-29 20:01:14 +00:00
debug-info-rvalue-ref.cpp Update API usage for llvm DIBuilder changes for rvalue reference 2012-05-19 01:36:50 +00:00
debug-info-static-fns.cpp Forward declarations should take a context. This helps the debugger 2012-04-23 19:00:24 +00:00
debug-info-template-array.cpp If we don't have a complete type for the array type yet either then 2012-08-07 00:48:43 +00:00
debug-info-template-limit.cpp Emit debug info for dynamic initializers. Permit __attribute__((nodebug)) on 2012-07-24 01:40:49 +00:00
debug-info-template-member.cpp Revert r158009 since there are some uses of artificial functions in 2012-10-17 17:37:17 +00:00
debug-info-template-quals.cpp Revert r158009 since there are some uses of artificial functions in 2012-10-17 17:37:17 +00:00
debug-info-template-recursive.cpp Testcase for previous commit. 2012-02-13 15:04:15 +00:00
debug-info-template.cpp Incomplete type does not have any size. 2011-04-04 23:18:38 +00:00
debug-info-this.cpp Add a test case for r128957. It fixed a bug! 2011-04-06 00:01:52 +00:00
debug-info-thunk.cpp Fix test suppressed in r166683 on 32-bit Linux 2012-10-26 07:01:51 +00:00
debug-info-union.cpp Emit debug info for dynamic initializers. Permit __attribute__((nodebug)) on 2012-07-24 01:40:49 +00:00
debug-info-use-after-free.cpp Debug info: Tighten up uses of plain MDNode pointers which don't survive replaceOperandWith. 2012-03-20 19:49:14 +00:00
debug-info-wchar.cpp Emit debug info for wchar_t. 2011-09-10 00:44:49 +00:00
debug-info-zero-length-arrays.cpp Fix name. The array is unboundED. 2012-12-05 21:43:37 +00:00
debug-info.cpp Don't try to emit unsupported templated friend declarations. They're unsupported 2011-09-01 21:49:51 +00:00
debug-lambda-expressions.cpp Revert r158009 since there are some uses of artificial functions in 2012-10-17 17:37:17 +00:00
debug-lambda-this.cpp Handle a captured this for the debug information as well. 2012-09-19 21:47:34 +00:00
decl-ref-init.cpp These tests require particular registered targets. Declared as such. 2011-06-03 22:24:54 +00:00
default-arg-temps.cpp Move unnamed_addr after the function arguments on Sabre's request. 2011-01-25 19:10:24 +00:00
default-arguments.cpp Ensure that default arguments are handled correctly in sub scopes. For example: 2012-03-13 08:55:35 +00:00
default-constructor-default-argument.cpp Whack a bunch of tests in CodeGenCXX to work on ARM (using ARM ABI). Batch 2 of 3. 2011-06-14 21:20:53 +00:00
default-constructor-for-members.cpp These tests require particular registered targets. Declared as such. 2011-06-03 22:24:54 +00:00
default-constructor-template-member.cpp Whack a bunch of tests in CodeGenCXX to work on ARM (using ARM ABI). Batch 1 of 3 or so. 2011-06-13 22:51:21 +00:00
default-destructor-nested.cpp Turn access control on by default in -cc1. 2010-04-09 19:03:51 +00:00
default-destructor-synthesis.cpp Fix test/CodeGenCXX/default-destructor-synthesis.cpp not to rely on asm output. 2010-01-27 03:03:08 +00:00
deferred-global-init.cpp C++: Add support for -fno-use-cxa-atexit. 2010-03-20 04:15:41 +00:00
delete-two-arg.cpp Do a proper recursive lookup when deciding whether a class's usual 2011-01-27 09:37:56 +00:00
delete.cpp When performing a ::delete of an object with a virtual destructor, 2012-09-25 10:10:39 +00:00
dependent-type-member-pointer.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
derived-to-base-conv.cpp When devirtualizing the conversion to a virtual base subobject, 2012-08-01 05:04:58 +00:00
derived-to-base.cpp Restore the lvalue-to-rvalue conversion patch with a minimal fix. 2010-12-01 04:43:34 +00:00
derived-to-virtual-base-class-calls-final.cpp Cleanup tests, no functionality change. 2011-04-17 21:49:47 +00:00
destructor-calls.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
destructor-debug-info.cpp Add a new option for and disable column number information as there 2012-10-18 21:52:18 +00:00
destructor-exception-spec.cpp PR13479: If we see the definition of an out-of-line destructor in C++11, be 2012-07-30 23:48:14 +00:00
destructors.cpp clang/test/CodeGenCXX: Fix two tests, destructors.cpp and microsoft-abi-array-cookies.cpp, for -Asserts. 2012-05-01 11:13:04 +00:00
devirtualize-virtual-function-calls-final.cpp When we're devirtualizing a method call, make sure the method has the correct IR type. 2012-10-25 00:12:49 +00:00
devirtualize-virtual-function-calls.cpp Provide fixed target triples to make test results consistent across ARM hosts. 2012-09-10 23:06:08 +00:00
dynamic-cast-always-null.cpp Do not crash when we dynamic cast a final type to void*. 2012-06-19 23:44:55 +00:00
dynamic-cast.cpp Throw the switch to convert clang to the new exception handling model! 2011-09-19 20:31:14 +00:00
eh.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
elide-call-reference.cpp Whack a bunch of tests in CodeGenCXX to work on ARM (using ARM ABI). Batch 1 of 3 or so. 2011-06-13 22:51:21 +00:00
empty-classes.cpp Fix PR8796. 2010-12-29 23:02:58 +00:00
empty-union.cpp A base subobject type doesn't make sense for unions; don't try to compute it. Based on patch by Yin Ma. Fixes PR11751. 2012-01-13 03:58:31 +00:00
enum.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
eval-recursive-constant.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
exception-spec-decay.cpp PR14388: An array or function type in an exception specification should be 2012-11-28 22:33:28 +00:00
exceptions-no-rtti.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
exceptions.cpp During jump-scope checking, build an ExprWithCleanups immediately 2012-09-25 06:56:03 +00:00
explicit-instantiation.cpp Template static data members can have weak_odr linkage, not just 2011-04-12 01:46:54 +00:00
expr.cpp Improve test coverage. 2010-08-21 02:46:28 +00:00
extern-c.cpp Fix assertion failure when parsing linkage specifications (PR5921), 2010-02-07 08:38:28 +00:00
fastcall.cpp Add inreg markers with the x86_fastcallcc calling convention. 2012-10-24 01:58:58 +00:00
field-access-debug-info.cpp Testcase for LLVM commit r146475. 2011-12-13 05:09:22 +00:00
for-range-temporaries.cpp Extend for-range temporary cleanups codegen test to catch the bug which Eli 2012-01-31 23:43:25 +00:00
for-range.cpp DR1472: A reference isn't odr-used if it has preceding initialization, 2012-10-20 01:38:33 +00:00
forward-enum.cpp For the purposes of building LLVM types, a forward-declared 2012-02-24 22:40:36 +00:00
fp16-mangle.cpp Missed tests for half FP support 2011-10-14 23:32:50 +00:00
fp16-overload.cpp Missed tests for half FP support 2011-10-14 23:32:50 +00:00
friend-redecl.cpp When IRgen refers to a function declaration that is not a definition, 2011-02-09 02:03:05 +00:00
function-template-explicit-specialization.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
function-template-specialization.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
global-array-destruction.cpp Remove abuse of hasTrivial*, and fix miscompile wherein global arrays with 2012-11-12 21:38:00 +00:00
global-block-literal-helpers.cpp block literal irgen: several improvements on naming block 2012-06-26 16:06:38 +00:00
global-dtor-no-atexit.cpp Use atexit when __cxa_atexit isn't available instead of adding a 2012-04-06 18:21:06 +00:00
global-init-darwin.cpp Try to fix buildbot tests. 2010-06-08 23:10:20 +00:00
global-init.cpp Update documentation of HasSideEffects to match its callers' expectations, and 2012-08-07 05:18:29 +00:00
global-llvm-constant.cpp When determining whether we can make a declaration into a global 2011-05-13 01:05:07 +00:00
goto.cpp Whenever explicitly activating or deactivating a cleanup, we 2011-11-10 10:43:54 +00:00
implicit-copy-assign-operator.cpp Try to unbreak clang-i686-darawin10 builder 2010-05-03 15:51:04 +00:00
implicit-copy-constructor.cpp When deciding whether to convert an array construction loop into a memcpy, look 2012-11-07 23:56:21 +00:00
implicit-instantiation-1.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
incomplete-member-function-pointer.cpp Fix for PR7040: Don't try to compute the LLVM type for a function where it 2010-05-30 06:03:20 +00:00
incomplete-types.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
inheriting-constructor.cpp PR12224 (sort of): Diagnose inheriting constructor declarations in C++11 mode. 2012-04-27 19:33:05 +00:00
init-invariant.cpp Emit the exact size for the invariant intrinsics. 2012-02-21 00:26:58 +00:00
init-priority-attr.cpp Implement codegen for init_priority attribute properly - make sure it 2012-11-06 22:44:45 +00:00
inline-functions.cpp When we're looking for redeclarations which might provide a definition in CodeGen, make sure we examine all the redeclarations. PR13252. 2012-07-02 21:05:30 +00:00
instantiate-blocks.cpp More block instantiation stuff. Set variable/param DeclContext 2010-07-13 20:05:58 +00:00
instantiate-init-list.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
instantiate-temporaries.cpp s/%clang-cc1/%clang_cc1/ for conformity. 2011-12-13 00:32:15 +00:00
instrument-functions.cpp Fix crash on C++ code when compiling with -finstrument-functions. 2011-05-16 23:49:20 +00:00
internal-linkage.cpp PR10120: Make CodeGenModule::getVTableLinkage use NamedDecl::getLinkage to determine whether the vtable should be externally visible, instead of a rough approximation of it which messes up with templates. 2011-06-10 21:53:06 +00:00
key-function-vtable.cpp Warn about code that uses variables and functions with internal linkage 2011-02-19 02:53:41 +00:00
lambda-expressions.cpp Fix the determination of whether a capture refers to an enclosing 2012-12-01 01:01:09 +00:00
lvalue-bitcasts.cpp Add lvalue-bitcast support for complex numbers. 2010-07-14 21:35:45 +00:00
m64-ptr.cpp Migrate test from llvm/test/FrontendC++. 2011-08-16 21:41:40 +00:00
mangle-98.cpp constexpr: converted constant expression handling for enumerator values, case 2012-01-18 23:55:52 +00:00
mangle-abi-examples.cpp Fix some bugs in local class mangling brought up in PR8355. 2010-10-18 21:28:44 +00:00
mangle-address-space.cpp Fix mangling substitutions for address-space-qualified class 2011-12-03 18:24:43 +00:00
mangle-alias-template.cpp When a pack expansion occurs in the template argument list of an alias 2012-02-03 17:16:23 +00:00
mangle-exprs.cpp Implement Mike Herrick's proposed noexcept mangling. 2012-09-25 09:10:17 +00:00
mangle-extern-local.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
mangle-extreme.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
mangle-lambdas.cpp Fix an edge case of mangling involving the combination of a lambda and typeid. 2012-09-26 04:34:21 +00:00
mangle-local-class-names.cpp Refactor local class name mangling and make it 2010-03-04 01:02:03 +00:00
mangle-local-class-vtables.cpp Fix some bugs in local class mangling brought up in PR8355. 2010-10-18 21:28:44 +00:00
mangle-local-classes-nested.cpp Fix some bugs in local class mangling brought up in PR8355. 2010-10-18 21:28:44 +00:00
mangle-ms-abi-examples.cpp Grab bag of Microsoft Mangler fixes: 2012-06-13 00:18:14 +00:00
mangle-ms-arg-qualifiers.cpp Follow-up on r163110 - forgot to commit some new tests... 2012-09-03 09:20:57 +00:00
mangle-ms-back-references-pr13207.cpp [-cxx-abi microsoft] Also spill the argument-back-references context when mangling templates 2012-11-29 08:58:47 +00:00
mangle-ms-back-references.cpp [Windows] Split the back reference tests into two separate files as the templates are getting hairy 2012-07-12 14:33:58 +00:00
mangle-ms-cxx11.cpp MS: Mangle rvalue references and nullptr_t, and produce back-references when 2012-06-21 02:52:27 +00:00
mangle-ms-return-qualifiers.cpp Fix PR13444 - wrong mangling of "const char * const *" and friends with "-cxx-abi microsoft" 2012-09-03 09:08:10 +00:00
mangle-ms-template-callback.cpp Fix the mangling of function pointers in the MS ABI. 2012-08-25 01:12:56 +00:00
mangle-ms-templates.cpp [Windows] Fix mangling of number literal '0' 2012-11-08 23:38:59 +00:00
mangle-ms.cpp Fix PR14413 - incorrect mangling of anonymous namespaces with -cxx-abi microsoft 2012-11-26 08:55:48 +00:00
mangle-neon-vectors.cpp Add a test for Neon vector mangling 2010-11-16 00:32:31 +00:00
mangle-nullptr-arg.cpp Fix the AST representation for non-type template arguments to encode 2012-09-26 02:36:12 +00:00
mangle-ref-qualifiers.cpp Change the mangling of a ref-qualifier on a function type so that 2012-05-15 02:01:59 +00:00
mangle-std-externc.cpp Fix a bug in the mangler where in 'namespace std { extern "C" {X;} }', X would not be seen to be in ::std::. 2012-03-05 09:59:43 +00:00
mangle-subst-std.cpp Remove CodeGenVTables::ComputeVTableRelatedInformation dependency on CodeGen 2011-09-26 01:56:36 +00:00
mangle-subst.cpp When mangling member function pointers, fake adding a substitution corresponding to the function type. 2010-06-02 04:29:50 +00:00
mangle-system-header.cpp Don't turn off mangling in implicitly extern "C" system headers. GCC 2010-03-07 05:10:40 +00:00
mangle-template.cpp Fix the AST representation for non-type template arguments to encode 2012-09-26 02:36:12 +00:00
mangle-this-cxx11.cpp Implement C++11 [expr.prim.general]p3, which permits the use of 'this' 2012-04-16 07:05:22 +00:00
mangle-unnameable-conversions.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
mangle-unnamed.cpp Make that test case actually test something, and add another test. 2011-02-01 08:30:38 +00:00
mangle-valist.cpp Fix PR 11709: Change the definition of va_list to meet AAPCS requirement 2012-10-10 06:56:20 +00:00
mangle-variadic-templates.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
mangle.cpp Provide the correct mangling and linkage for certain unnamed nested classes. 2012-11-14 01:52:05 +00:00
member-alignment.cpp This patch removes the XFAIL for powerpc for 2012-10-31 17:31:46 +00:00
member-call-parens.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
member-data-pointers.cpp Restructure some of the member-pointer tests, implicitly 2012-05-01 17:32:20 +00:00
member-expressions.cpp Introduce a new kind of derived-to-base cast which bypasses the need for 2010-03-30 23:58:03 +00:00
member-function-pointer-calls.cpp Relax the FileCheck assertions in this test a touch. Previously the test 2012-03-22 06:22:13 +00:00
member-function-pointers.cpp Restructure some of the member-pointer tests, implicitly 2012-05-01 17:32:20 +00:00
member-functions.cpp PR13941: Mark all virtual functions as unnamed_addr. It's not possible to 2012-09-28 22:46:07 +00:00
member-init-anon-union.cpp A union can have a constexpr defaulted default constructor, if it has an 2012-05-07 01:07:30 +00:00
member-init-assignment.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
member-init-struct.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
member-init-union.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
member-initializers.cpp with recent optimizer changes, these all get devirtualized. 2010-05-01 01:42:06 +00:00
member-templates.cpp Move unnamed_addr after the function arguments on Sabre's request. 2011-01-25 19:10:24 +00:00
microsoft-abi-array-cookies.cpp clang/test/CodeGenCXX: Fix two tests, destructors.cpp and microsoft-abi-array-cookies.cpp, for -Asserts. 2012-05-01 11:13:04 +00:00
microsoft-abi-constructors.cpp clang/test/CodeGenCXX/microsoft-*: Fix for -Asserts. 2012-09-25 09:53:18 +00:00
microsoft-abi-default-cc.cpp Fix the CC-matching logic for instance methods in the MS ABI. 2012-08-25 02:00:03 +00:00
microsoft-abi-methods.cpp clang/test/CodeGenCXX/microsoft-*: Fix for -Asserts. 2012-09-25 09:53:18 +00:00
microsoft-abi-static-initializers.cpp clang/test/CodeGenCXX/microsoft-*: Fix for -Asserts. 2012-09-25 09:53:18 +00:00
microsoft-interface.cpp clang/test/CodeGenCXX/microsoft-*: Fix for -Asserts. 2012-09-25 09:53:18 +00:00
microsoft-uuidof-unsupported-target.cpp Add codegen support for __uuidof(). 2012-10-11 10:13:44 +00:00
microsoft-uuidof.cpp clang/test/CodeGenCXX/microsoft-uuidof.cpp: Fix for -Asserts. 2012-10-11 11:20:31 +00:00
ms_wide_predefined_expr.cpp Add tests that I wrote for r159060 but forgot to `svn add`. 2012-06-25 22:30:41 +00:00
multi-dim-operator-new.cpp Check for some code gen. for PR6641 test. 2010-03-25 18:05:35 +00:00
namespace-aliases.cpp I hate default statements. Fixes PR6874. 2010-04-23 02:02:43 +00:00
nested-base-member-access.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
new-array-init-exceptions.cpp Reapply r151172 - Unwind path cleanup for array new list initializers - with a 2012-02-24 00:13:55 +00:00
new-array-init.cpp CodeGen for array new list initializers. Doesn't correctly clean up in the face of exceptions yet. 2012-02-22 17:37:52 +00:00
new-operator-phi.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
new-overflow.cpp Convert the standard default-construction loops to use phis and 2011-07-13 06:10:41 +00:00
new-with-default-arg.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
new.cpp Fix a CodeGen bug where we would skip zero-initialization for 2012-08-25 07:11:29 +00:00
no-exceptions.cpp Make EmitStartEHSpec and EmitEndEHSpec return early when exceptions are disabled. 2010-02-06 23:59:05 +00:00
noinline-template.cpp Use attributes from the definition (if available) when 2011-07-06 15:46:09 +00:00
nonconst-init.cpp Fix crash initializing a bit-field with a non-constant in a place where we 2010-07-17 23:55:01 +00:00
nrvo-noreturn.cc Ensure that the NRVO flag has some block to insert into. Fixes PR9178! 2011-02-16 23:59:08 +00:00
nrvo.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
nullptr.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
operator-new.cpp Abstract IR generation of array cookies into the C++ ABI class and 2010-09-02 09:58:18 +00:00
overload-binop-implicitconvert.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
override-layout.cpp When an externally-supplied record layout has a size that clearly 2012-10-26 22:31:14 +00:00
partial-destruction.cpp Throw the switch to convert clang to the new exception handling model! 2011-09-19 20:31:14 +00:00
pointers-to-data-members.cpp Make the ".*" operator work correctly when the base is a prvalue and the field has a non-trivial copy constructor. PR13097. 2012-06-15 23:51:06 +00:00
pr9130.cpp Add test from PR9130. 2011-02-03 06:36:50 +00:00
pr9965.cpp Special members which are defaulted or deleted on their first declaration are 2012-02-26 00:31:33 +00:00
pr11676.cpp PR11650: Implement resolution of core issue 1301. Value initialization can't be 2012-02-14 21:14:13 +00:00
pr11797.cpp Fix our handling of #pragma GCC visibility. 2012-01-26 02:02:57 +00:00
pr12104.cpp Also test pr12104 with pch. 2012-03-08 15:07:42 +00:00
pr12104.h Also test pr12104 with pch. 2012-03-08 15:07:42 +00:00
pr12251.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
pr13396.cpp Handle functions with struct arguments or return types and the regparm 2012-07-31 02:44:24 +00:00
pragma-pack-2.cpp Make CGRecordLayoutBuilder correctly switch over to a packed class when a class has a base whose alignment will break the class layout. <rdar://problem/10551376>. 2011-12-12 23:13:20 +00:00
pragma-pack.cpp When laying out bases in, always try the "base subobject" LLVM type. If it 2011-04-17 21:56:13 +00:00
pragma-visibility.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
predefined-expr-sizeof.cpp Improve the printing of __PRETTY_FUNCTION__ more provide more 2012-04-10 20:14:15 +00:00
predefined-expr.cpp Improve the printing of __PRETTY_FUNCTION__ more provide more 2012-04-10 20:14:15 +00:00
ptr-to-datamember.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
ptr-to-member-function.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
reference-bind-default-argument.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
reference-cast.cpp Fix r137086 to actually work properly in general. PR10650. 2011-08-14 04:50:34 +00:00
reference-field.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
reference-in-block-args.cpp Block C++ code gen. Adds support for block reference argument 2010-06-02 21:35:17 +00:00
reference-in-blocks.cpp Revert "Another i1 vs. i8 type mismatch issue. This time", it breaks some projects. 2010-09-03 00:35:23 +00:00
reference-init.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
references.cpp Rework the bitfield access IR generation to address PR13619 and 2012-12-06 11:14:44 +00:00
regparm.cpp Don't try to use inreg with 0 sized structs. Thanks to Eli for reporting the 2012-10-23 02:04:01 +00:00
reinterpret-cast.cpp clang/test: [PR8833] Introduce the feature "LP64" to suppress LLP64-incompatible tests. 2012-09-12 10:45:40 +00:00
return.cpp At -O0, emit an @llvm.trap() call at the end of a value-returning function which 2012-10-15 00:23:07 +00:00
rtti-fundamental.cpp Set unnamed_addr in every type info. 2011-01-11 23:55:05 +00:00
rtti-layout.cpp When building RTTI descriptors for pointer types, we need to get the unqualified array type and the qualifiers from it. 2010-06-02 15:44:35 +00:00
rtti-linkage.cpp When emitting RTTI for a non-class type, compute the visibility of the RTTI data based on the explicit visibility of the type. 2011-01-29 22:10:32 +00:00
rtti-visibility.cpp Fix test. 2011-01-29 22:39:23 +00:00
rvalue-references.cpp When devirtualizing the conversion to a virtual base subobject, 2012-08-01 05:04:58 +00:00
scoped-enums.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
sel-address.mm Do not treat @selector as lvalue (unlike g++). 2010-06-17 21:45:48 +00:00
sizeof-unwind-exception.cpp The size of struct UnwindException varies by platform with no 2011-08-30 01:42:09 +00:00
skip-vtable-pointer-initialization.cpp Fix another regression from the "skip vtable pointer initialization" 2011-05-16 04:08:36 +00:00
specialized-static-data-mem-init.cpp Template static data members can have weak_odr linkage, not just 2011-04-12 01:46:54 +00:00
static-assert.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
static-data-member.cpp C++11 allows unions to have static data members. Remove the corresponding 2012-02-16 20:41:22 +00:00
static-init-1.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
static-init-2.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
static-init-3.cpp clang side to match the LLVM IR type system rewrite patch. 2011-07-09 17:41:47 +00:00
static-init.cpp PR12226: don't generate wrong code if a braced string literal is used to 2012-04-15 02:50:59 +00:00
static-local-in-local-class.cpp Patch to fix a irgen crash accessing an initialized local static 2010-05-26 21:45:50 +00:00
static-member-variable-explicit-specialization.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
static-mutable.cpp Bug fix: do not emit static const local variables with mutable members 2012-02-17 06:48:11 +00:00
stmtexpr.cpp Whack a bunch of tests in CodeGenCXX to work on ARM (using ARM ABI). Batch 2 of 3. 2011-06-14 21:20:53 +00:00
switch-case-folding-1.cpp Another test for 148243 2012-01-16 18:22:26 +00:00
switch-case-folding-2.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
switch-case-folding.cpp A little more elaborate test for r148243 2012-01-16 18:07:45 +00:00
temp-order.cpp Fix a nasty bug where temporaries weren't marked as being conditional in some cases. 2010-01-24 00:20:05 +00:00
template-anonymous-types.cpp Provide the correct mangling and linkage for certain unnamed nested classes. 2012-11-14 01:52:05 +00:00
template-anonymous-union-member-initializer.cpp Turn access control on by default in -cc1. 2010-04-09 19:03:51 +00:00
template-dependent-bind-temporary.cpp Fixes an assertion violation when bind to temporary 2010-11-02 21:05:53 +00:00
template-inner-struct-visibility-hidden.cpp Template static data members can have weak_odr linkage, not just 2011-04-12 01:46:54 +00:00
template-instantiation.cpp Disable llvm optimizations in a clang test. 2012-06-22 17:28:01 +00:00
template-linkage.cpp Move unnamed_addr after the function arguments on Sabre's request. 2011-01-25 19:10:24 +00:00
template-static-var-defer.cpp Fix for PR7415: refactor CodeGenModule::MayDeferGeneration and make it less 2010-06-19 06:24:06 +00:00
temporaries.cpp Fix some wrong-code bugs in implicitly-defined assignment operators: 2012-11-13 00:54:12 +00:00
thiscall-struct-return.cpp test/CodeGenCXX/thiscall-struct-return.cpp: Relax expressions for -Asserts. 2012-02-22 03:36:54 +00:00
threadsafe-statics-exceptions.cpp Throw the switch to convert clang to the new exception handling model! 2011-09-19 20:31:14 +00:00
threadsafe-statics.cpp When compiling with -fno-threadsafe-statics, guard variables for globals with internal linkage don't have to be i64, i8 works just fine! 2011-04-27 04:37:08 +00:00
throw-expression-cleanup.cpp Fix ABI dependent tests by providing an explicit target triple. 2012-09-19 18:46:03 +00:00
throw-expression-dtor.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
throw-expressions.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
thunk-linkonce-odr.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
thunk-use-after-free.cpp Fix a use-after-free in thunk emission. EmitThunk may call RAUW on Init, invalidating the pointer. 2012-03-20 20:18:13 +00:00
thunks-available-externally.cpp Fix self-host; if a thunk already exists and has available_externally linkage, we should change its linkage instead of asserting. 2011-02-06 20:09:44 +00:00
thunks.cpp Call CGM.SetLLVMFunctionAttributesForDefinition on thunks so that they get 2012-09-21 20:39:32 +00:00
trivial-constructor-init.cpp Remove duplicated line. 2012-11-12 22:29:43 +00:00
try-catch.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
typeid-cxx11.cpp DR1535: only potentially-evaluated typeid expressions are disallowed in constant 2012-10-17 23:52:07 +00:00
typeid.cpp constexpr: support for evaluation and codegen of typeid constants. 2011-12-27 12:18:28 +00:00
typeinfo
unary-type-trait.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
uncode-string.cpp Fix the representation of wide strings in the AST and IR so that it uses the native representation of integers for the elements. This fixes a bunch of nastiness involving 2011-11-01 02:23:42 +00:00
union-dtor.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
unknown-anytype.cpp After some discussion with Doug, we decided that it made a lot more sense 2011-04-12 00:42:48 +00:00
value-init.cpp Unrevert r147271, reverted in r147361. 2011-12-30 21:15:51 +00:00
vararg-conversion-ctor.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
vararg-non-pod.cpp Fix our handling of the warning when one tries to pass a 2011-05-21 19:26:31 +00:00
varargs.cpp The lvalue-to-rvalue on structs in C++ is actually part 2011-08-27 01:09:30 +00:00
variadic-templates.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
virt-canonical-decl.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
virt-dtor-gen.cpp Move unnamed_addr after the function arguments on Sabre's request. 2011-01-25 19:10:24 +00:00
virt-dtor-key.cpp Set unnamed_addr in every type info. 2011-01-11 23:55:05 +00:00
virt-template-vtable.cpp When marking virtual functions as used for a class' vtable, mark all functions 2012-07-07 06:59:51 +00:00
virt-thunk-reference.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
virtual-base-cast.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
virtual-base-ctor.cpp Fixed by r123477. 2011-01-14 22:19:38 +00:00
virtual-base-destructor-call.cpp Whack a bunch of tests in CodeGenCXX to work on ARM (using ARM ABI). Batch 2 of 3. 2011-06-14 21:20:53 +00:00
virtual-bases.cpp clang side to match the LLVM IR type system rewrite patch. 2011-07-09 17:41:47 +00:00
virtual-destructor-calls.cpp PR12798: Don't drop part of the nested name specifier when instantiating a 2012-05-15 06:15:11 +00:00
virtual-destructor-synthesis.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
virtual-function-calls.cpp Fix a refacto that broke the clang-on-clang build. 2010-02-12 18:14:46 +00:00
virtual-functions-incomplete-types.cpp clang side to match the LLVM IR type system rewrite patch. 2011-07-09 17:41:47 +00:00
virtual-implicit-copy-assignment.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
virtual-implicit-move-assignment.cpp Always implicitly declare move assignment operations for dynamic classes, in 2011-12-24 21:56:24 +00:00
virtual-inherited-destructor.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
virtual-operator-call.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
virtual-pseudo-destructor-call.cpp Whack a bunch of tests in CodeGenCXX to work on ARM (using ARM ABI). Batch 2 of 3. 2011-06-14 21:20:53 +00:00
visibility-hidden-extern-templates.cpp Revert 124633. The linker has been told how to merge available_externally. 2011-02-01 05:45:26 +00:00
visibility-inlines-hidden.cpp A number of test cases assume that an "int" parameter or return value 2012-10-24 12:22:56 +00:00
visibility.cpp Consider the visibility of template template arguments. GCC doesn't, but it also 2012-07-31 19:02:02 +00:00
vla.cpp Unlike in C++03, a constant-expression is not an unevaluated operand in C++11. 2011-12-20 02:08:33 +00:00
volatile-1.cpp Update clang tests for r137527. 2011-08-12 23:33:52 +00:00
volatile.cpp Fix a bug in the emission of __real/__imag l-values on scalar operands. 2010-12-05 02:00:02 +00:00
vtable-available-externally.cpp Add another test that we can fully devirtualize now. 2011-02-06 20:16:20 +00:00
vtable-cast-crash.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
vtable-debug-info.cpp test/CodeGenCXX/vtable-debug-info.cpp: It does not crash on mingw. 2011-05-02 04:50:00 +00:00
vtable-key-function.cpp Mark VTables and RTTI data linkonce_odr instead of weak_odr, with the exception of explicit template instantiations, which have to be weak_odr. 2011-01-24 00:46:19 +00:00
vtable-layout-abi-examples.cpp Move vtable dumper call to VTableBuilder ctor 2011-09-26 01:57:00 +00:00
vtable-layout-extreme.cpp Add an extreme vbase offsets test. I'm kinda amazed that this works myself ;) 2010-02-16 16:50:08 +00:00
vtable-layout.cpp Note deleted functions when dumping vtables. 2012-10-16 20:25:33 +00:00
vtable-linkage.cpp fix a bunch of comment typos found by codespell. Patch by 2011-04-15 05:22:18 +00:00
vtable-pointer-initialization.cpp clang side to match the LLVM IR type system rewrite patch. 2011-07-09 17:41:47 +00:00
vtt-layout.cpp PR13684: Emit vtable entries for deleted functions as __cxa_deleted_function. 2012-10-16 22:56:05 +00:00
warn-padded-packed.cpp Use -emit-llvm-only in the test. 2010-09-23 09:40:20 +00:00
weak-extern-typeinfo.cpp c++: support gcc's application of weak attribute on 2011-10-21 22:27:12 +00:00
weak-external.cpp Do not depend on the standard library on the system. Replace the #include with 2011-08-19 20:43:24 +00:00
x86_32-arguments.cpp Simplify code for returning a struct for Darwin x86-32 ABI. Use a better type for a function returning a struct containing only a pointer. Handle the edge case of a struct containing only a float or double plus some dead padding instead of asserting. 2011-11-18 01:25:50 +00:00
x86_64-arguments.cpp Merge x86-64-abi-sret-vs-2word-struct-param.cpp into the generic 2012-05-03 01:34:46 +00:00