llvm-project/clang/lib/Sema
Hal Finkel bcc06085a8 Add __builtin_assume and __builtin_assume_aligned using @llvm.assume.
This makes use of the recently-added @llvm.assume intrinsic to implement a
__builtin_assume(bool) intrinsic (to provide additional information to the
optimizer). This hooks up __assume in MS-compatibility mode to mirror
__builtin_assume (the semantics have been intentionally kept compatible), and
implements GCC's __builtin_assume_aligned as assume((p - o) & mask == 0). LLVM
now contains special logic to deal with assumptions of this form.

llvm-svn: 217349
2014-09-07 22:58:14 +00:00
..
AnalysisBasedWarnings.cpp Const-correctness, return-after-else, and formatting updates. NFC. 2014-08-15 12:38:17 +00:00
AttributeList.cpp Automate attribute argument count semantic checking when there are variadic or optional arguments present. With this, the only time you should have to manually check attribute argument counts is when HasCustomParsing is set to true, or when you have variadic arguments that aren't really variadic (like ownership_holds and friends). 2014-07-31 16:37:04 +00:00
CMakeLists.txt Split off CUDA-specific Sema parts to a new file 2014-09-03 15:27:03 +00:00
CodeCompleteConsumer.cpp [C++11] Use 'nullptr'. Sema edition. 2014-05-26 06:22:03 +00:00
DeclSpec.cpp Move __vector long deprecation checking into DeclSpec::Finish 2014-08-24 04:50:19 +00:00
DelayedDiagnostic.cpp Objective-C. Diagnose when property access is using declared 2014-06-16 17:25:41 +00:00
IdentifierResolver.cpp PR20769: Fix confusion when checking whether a prior default argument was in 2014-08-27 22:31:34 +00:00
JumpDiagnostics.cpp PR20356: Fix all Sema warnings with mismatched ext_/warn_ versus 2014-07-19 01:39:17 +00:00
Makefile
MultiplexExternalSemaSource.cpp Add -Wunused-local-typedef, a warning that finds unused local typedefs. 2014-09-06 01:25:55 +00:00
Scope.cpp Revert r213437 2014-07-25 20:52:51 +00:00
ScopeInfo.cpp [C++11] Support for capturing of variable length arrays in lambda expression. 2014-08-28 04:28:19 +00:00
Sema.cpp Add -Wunused-local-typedef, a warning that finds unused local typedefs. 2014-09-06 01:25:55 +00:00
SemaAccess.cpp Consolidate some note diagnostics 2014-05-28 12:20:14 +00:00
SemaAttr.cpp Fix some cases where StringRef was being passed by const reference. Remove const from some other StringRefs since its implicitly const already. 2014-08-30 16:55:52 +00:00
SemaCUDA.cpp Split off CUDA-specific Sema parts to a new file 2014-09-03 15:27:03 +00:00
SemaCXXScopeSpec.cpp Add -Wunused-local-typedef, a warning that finds unused local typedefs. 2014-09-06 01:25:55 +00:00
SemaCast.cpp PR20227: materialize a temporary when dynamic_casting a class prvalue to a 2014-07-08 17:25:14 +00:00
SemaChecking.cpp Add __builtin_assume and __builtin_assume_aligned using @llvm.assume. 2014-09-07 22:58:14 +00:00
SemaCodeComplete.cpp Switch over a few uses of param_begin() to parameters() 2014-07-07 09:02:20 +00:00
SemaConsumer.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:48:34 +00:00
SemaDecl.cpp Add -Wunused-local-typedef, a warning that finds unused local typedefs. 2014-09-06 01:25:55 +00:00
SemaDeclAttr.cpp Add __builtin_assume and __builtin_assume_aligned using @llvm.assume. 2014-09-07 22:58:14 +00:00
SemaDeclCXX.cpp [modules] Make NamespaceAliasDecl redeclarable, as it should be. This fixes 2014-09-03 23:11:22 +00:00
SemaDeclObjC.cpp Objective-C. Warn if user has made explicit call 2014-08-22 16:57:26 +00:00
SemaExceptionSpec.cpp [modules] Maintain an AST invariant across module load/save: if any declaration 2014-07-31 23:46:44 +00:00
SemaExpr.cpp Split off CUDA-specific Sema parts to a new file 2014-09-03 15:27:03 +00:00
SemaExprCXX.cpp Simplify creation of a bunch of ArrayRefs by using None, makeArrayRef or just letting them be implicitly created. 2014-08-27 06:28:36 +00:00
SemaExprMember.cpp Hide the concept of diagnostic levels from lex, parse and sema 2014-06-15 23:30:39 +00:00
SemaExprObjC.cpp Use llvm::makeArrayRef instead of explicitly calling ArrayRef constructor and mentioning the type. This works now that we have a conversion from ArrayRef<T*> to ArrayRef<const T*>. 2014-08-30 16:55:39 +00:00
SemaFixItUtils.cpp PR17290: Use 'false' macro in fix-it hint for initializing a variable of type 2013-09-20 00:27:40 +00:00
SemaInit.cpp PR20844: If we fail to list-initialize a reference, map to the referenced type 2014-09-04 22:13:39 +00:00
SemaLambda.cpp [C++11] Support for capturing of variable length arrays in lambda expression. 2014-08-28 04:28:19 +00:00
SemaLookup.cpp Use llvm::makeArrayRef instead of explicitly calling ArrayRef constructor and mentioning the type. This works now that we have a conversion from ArrayRef<T*> to ArrayRef<const T*>. 2014-08-30 16:55:39 +00:00
SemaObjCProperty.cpp Objective-C [qoi]. If property is going to be implemented 2014-08-29 20:29:31 +00:00
SemaOpenMP.cpp [OPENMP] Improved DSA processing of the loop control variables for loop directives. 2014-07-25 06:27:47 +00:00
SemaOverload.cpp Use llvm::makeArrayRef instead of explicitly calling ArrayRef constructor and mentioning the type. This works now that we have a conversion from ArrayRef<T*> to ArrayRef<const T*>. 2014-08-29 06:05:01 +00:00
SemaPseudoObject.cpp Fix some cases where StringRef was being passed by const reference. Remove const from some other StringRefs since its implicitly const already. 2014-08-30 16:55:52 +00:00
SemaStmt.cpp Add -Wunused-local-typedef, a warning that finds unused local typedefs. 2014-09-06 01:25:55 +00:00
SemaStmtAsm.cpp Add -Wunused-local-typedef, a warning that finds unused local typedefs. 2014-09-06 01:25:55 +00:00
SemaStmtAttr.cpp Add a state variable to the loop hint attribute. 2014-07-31 20:15:14 +00:00
SemaTemplate.cpp Add -Wunused-local-typedef, a warning that finds unused local typedefs. 2014-09-06 01:25:55 +00:00
SemaTemplateDeduction.cpp C++1y is now C++14! 2014-08-19 15:55:55 +00:00
SemaTemplateInstantiate.cpp Wrap to 80 columns. No behavior change. 2014-07-28 00:02:09 +00:00
SemaTemplateInstantiateDecl.cpp Add -Wunused-local-typedef, a warning that finds unused local typedefs. 2014-09-06 01:25:55 +00:00
SemaTemplateVariadic.cpp Fix for PR20660, where unexpanded parameter pack in function parameter clause causes clang to crash. 2014-08-29 21:08:16 +00:00
SemaType.cpp Allow __fp16 as a function arg or return type for AArch64 2014-08-27 16:31:57 +00:00
TreeTransform.h Don't allow lambdas to capture invalid decls during template instantiations. 2014-09-02 19:32:44 +00:00
TypeLocBuilder.cpp [C++11] Use 'nullptr'. Sema edition. 2014-05-26 06:22:03 +00:00
TypeLocBuilder.h Header guard canonicalization, clang part. 2014-08-13 16:25:19 +00:00