summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
...
* Convert the return type of GetNumNonZeroBytesInInit() to CharUnits. NoKen Dyck2011-04-241-7/+8
| | | | | | change in functionality intended. llvm-svn: 130111
* Eliminate some literal 8s by converting size variables in EmitGCMove() andKen Dyck2011-04-241-4/+4
| | | | | | EmitFinalDestCopy() to CharUnits. No change in functionality intended. llvm-svn: 130110
* Replace calls to ASTContext::getTypeInfo() with calls toKen Dyck2011-04-241-6/+2
| | | | | | | ASTContext::getTypeSize() when only the size part is used. No change in functionality intended. llvm-svn: 130109
* Simplify AppendTailPadding() by converting its parameter to CharUnits. NoKen Dyck2011-04-241-11/+7
| | | | | | change in functionality intended. llvm-svn: 130108
* Eliminate literal 8s from LayoutUnionField by converting NumBytesToAppend toKen Dyck2011-04-241-4/+5
| | | | | | CharUnits. No change in functionality intended. llvm-svn: 130107
* Eliminate literal 8s from LayoutBitField(), converting variables toKen Dyck2011-04-241-10/+16
| | | | | | | CharUnits or replacing the 8s with char align. No change in functionality intended. llvm-svn: 130106
* Convert AccessInfo::AccessAlignment to CharUnits. No change in functionalityKen Dyck2011-04-243-9/+10
| | | | | | intended. llvm-svn: 130087
* PR9214: Convert the DIBuilder API to use ArrayRef.Jay Foad2011-04-241-29/+17
| | | | llvm-svn: 130086
* Convert CGBitFieldInfo::FieldByteOffset to CharUnits. No change inKen Dyck2011-04-243-9/+13
| | | | | | functionality intended. llvm-svn: 130085
* Remove unused STL header includes.Jay Foad2011-04-232-2/+0
| | | | llvm-svn: 130068
* Tie debug information for method declaration with debug information for ↵Devang Patel2011-04-232-3/+32
| | | | | | method definition. llvm-svn: 130037
* Add -fdelayed-template-parsing option. Using this option all templated ↵Francois Pichet2011-04-221-2/+6
| | | | | | | | | function definitions are parsed at the end of the translation unit only if it is required by an actual instantiation. As such all the symbols of the TU are available during name lookup. Using this flag is necessary for compatibility with Microsoft template code. This also provides some parsing speed improvement. llvm-svn: 130022
* Fixes an instance method meta-data generation bug inFariborz Jahanian2011-04-221-0/+8
| | | | | | | | | | | ObjC NeXt runtime where method pointer registered in metadata belongs to an unrelated method. Ast part of this fix, I turned at @end missing warning (for class implementations) into an error as we can never be sure that meta-data being generated is correct. // rdar://9072317 llvm-svn: 130019
* Replace a couple of literal 8s with ASTContext::getCharWidth(). No change inKen Dyck2011-04-221-4/+8
| | | | | | functionality intended. llvm-svn: 130002
* Eliminate some literal 8s from EmitNullInitialization() by convertingKen Dyck2011-04-221-7/+9
| | | | | | variables to CharUnits. No change in functionality intended. llvm-svn: 130001
* Eliminate some literal 8s from EmitDeclare by converting to CharUnits. NoKen Dyck2011-04-221-5/+5
| | | | | | change in functionality intended. llvm-svn: 129999
* Use CharUnits to eliminate some literal 8s inKen Dyck2011-04-221-9/+11
| | | | | | EmitTypeForVarWithBlocksAttr(). No change in functionality intended. llvm-svn: 129998
* Replace some literal 8s with char width and char align. No change inKen Dyck2011-04-221-2/+2
| | | | | | functionality intended. llvm-svn: 129996
* PTX: Add default PTX calling conventionsJustin Holewinski2011-04-221-0/+72
| | | | llvm-svn: 129987
* Wire up the -ftest-coverage and -fprofile-arcs flags to .gcno file emission (atNick Lewycky2011-04-213-3/+15
| | | | | | | | | compile time) and .gcda emission (at runtime). --coverage enables both. This does not yet add the profile_rt library to the link step if -fprofile-arcs is enabled when linking. llvm-svn: 129956
* PR9214: Convert Metadata API to use ArrayRef.Jay Foad2011-04-215-7/+8
| | | | llvm-svn: 129929
* The 0.98 revision of the x86-64 ABI clarified a lot of things, someJohn McCall2011-04-211-6/+24
| | | | | | | of which break strict compatibility with previous compilers. Implement one of them and then immediately opt out on Darwin. llvm-svn: 129899
* ForArgyrios Kyrtzidis2011-04-212-1/+11
| | | | | | | | | | | | | | double data[20000000] = {0}; we would blow out the memory by creating 20M Exprs to fill out the initializer. To fix this, if the initializer list initializes an array with more elements than there are initializers in the list, have InitListExpr store a single 'ArrayFiller' expression that specifies an expression to be used for value initialization of the rest of the elements. Fixes rdar://9275920. llvm-svn: 129896
* Don't add type names for enums; they're never used in LLVM IR.Anders Carlsson2011-04-202-15/+16
| | | | llvm-svn: 129894
* fix a crash on code that uses the result value of __builtin___memcpy_chk.Chris Lattner2011-04-201-3/+3
| | | | llvm-svn: 129892
* IRgen/ARM: Fix a think-o in conversion-to-null for member function pointers, weDaniel Dunbar2011-04-191-5/+6
| | | | | | | | were computing the conversion as (ptr != 0 && non-virtual), when it should be (ptr != 0 || is-virtual). - Test to follow in LLVM test-suite. llvm-svn: 129830
* some cleanups to use IRBuilder methods instead of llvm:: foo methods.Chris Lattner2011-04-191-42/+34
| | | | llvm-svn: 129829
* ADT/Triple: Switch to using .isOSDarwin() predicate.Daniel Dunbar2011-04-193-4/+5
| | | | llvm-svn: 129823
* use the newly introduced IRBuilder getInt() method to reduce someChris Lattner2011-04-191-17/+12
| | | | | | redundancy pointed out by John. llvm-svn: 129808
* Fix typo in comment.Devang Patel2011-04-182-2/+2
| | | | llvm-svn: 129703
* Get rid of std::vector usage when getting function types in CGException.cppAnders Carlsson2011-04-181-30/+22
| | | | llvm-svn: 129698
* Clean up code generation of typeid expressions and add C++ standard references.Anders Carlsson2011-04-181-37/+53
| | | | llvm-svn: 129682
* Fix a miscompilation I introduced in r129652, thanks for Eli for tracking Chris Lattner2011-04-171-1/+9
| | | | | | | | | | | | | | | it down. we effectively were compile the testcase into: void test14(int x) { switch (x) { case 11: break; case 42: test14(97); // fallthrough default: test14(42); break; which is not the same thing at all. This fixes a miscompilation of MallocBench/gs seen on the clang-x86_64-linux-fnt buildbot. llvm-svn: 129679
* When laying out bases in, always try the "base subobject" LLVM type. If itAnders Carlsson2011-04-171-14/+66
| | | | | | | | | | | | | turns out that a field or base needs to be laid out in the tail padding of the base, CGRecordLayoutBuilder::ResizeLastBaseFieldIfNecessary will convert it to an array of i8. I've audited the new test results to make sure that they are still valid. I've also verified that we pass a self-host with this change. This (finally) fixes PR5589! llvm-svn: 129673
* Add addBaseSubobjectTypeName which isn't used yet.Anders Carlsson2011-04-172-0/+14
| | | | llvm-svn: 129671
* Move code to add a type name to a TagDecl type out into a helper function. ↵Anders Carlsson2011-04-172-25/+37
| | | | | | No functionality change. llvm-svn: 129669
* Use a SmallVector for field types in CGRecordLayoutBuilder now that ↵Anders Carlsson2011-04-171-1/+1
| | | | | | llvm::StructType::get takes an ArrayRef. llvm-svn: 129667
* Hack to turn the valgrind buildbot green, until Devang can address itEli Friedman2011-04-171-1/+1
| | | | | | properly. llvm-svn: 129657
* implement rdar://9289524 - case followed immediately by break results in ↵Chris Lattner2011-04-173-0/+42
| | | | | | | | empty IR block, a -O0 code quality issue. llvm-svn: 129652
* fold memcpy/set/move_chk to llvm.memcpy/set/move when the sizesChris Lattner2011-04-171-1/+50
| | | | | | | | | are trivial. This exposes opportunities earlier, and allows fastisel to do good things with these at -O0. This addresses rdar://9289468 - clang doesn't fold memset_chk at -O0 llvm-svn: 129651
* fix rdar://9289603 - clang should fold trivial ?: for enums as well as ↵Chris Lattner2011-04-161-3/+2
| | | | | | | | integer constants into select at -O0 by making the isCheapEnoughToEvaluateUnconditionally predicate handle anything that folds to a constant. In particular, we now fold enums. llvm-svn: 129649
* Emit proper selector name in debug info.Devang Patel2011-04-162-2/+17
| | | | llvm-svn: 129626
* Emit debug info for Objective-C properties.Devang Patel2011-04-161-3/+16
| | | | llvm-svn: 129625
* Add 3DNow! Intrinsics.Michael J. Spencer2011-04-151-0/+132
| | | | llvm-svn: 129570
* Support for C++11 (non-template) alias declarations.Richard Smith2011-04-153-4/+5
| | | | llvm-svn: 129567
* fix a bunch of comment typos found by codespell. Patch byChris Lattner2011-04-159-13/+13
| | | | | | Luis Felipe Strano Moraes! llvm-svn: 129559
* C1X: implement generic selectionsPeter Collingbourne2011-04-156-13/+27
| | | | | | | As an extension, generic selection support has been added for all supported languages. The syntax is the same as for C1X. llvm-svn: 129554
* Add support for C++0x's range-based for loops, as specified by the C++11 ↵Richard Smith2011-04-142-0/+79
| | | | | | draft standard (N3291). llvm-svn: 129541
* Implement ARM pcs attribute. Basically it's another way of calling ↵Anton Korobeynikov2011-04-142-6/+17
| | | | | | | | | | convention selection (AAPCS or AAPCS+VFP), similar to fastcall / stdcall / whatevercall seen on x86. In particular, all library functions should always be AAPCS regardless of floating point ABI used. llvm-svn: 129534
* Replace a couple of divide-by-8s with divide-by-charwidths. No change inKen Dyck2011-04-141-2/+4
| | | | | | functionality intended. llvm-svn: 129496
OpenPOWER on IntegriCloud