ef8225444452a1486bd721f3285301fe84643b00 |
|
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for rebase to r212749. This also fixes a small issue with arm_neon.h not being generated always. Includes a cherry-pick of: r213450 - fixes mac-specific header issue r213126 - removes a default -Bsymbolic on Android Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
/external/clang/lib/CodeGen/CodeGenTypes.h
|
651f13cea278ec967336033dd032faef0e9fc2ec |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/lib/CodeGen/CodeGenTypes.h
|
cdd7a96a8ee9664873492daf05e1db5e42dcf976 |
|
31-Oct-2013 |
Mark Lacey <mark.lacey@apple.com> |
Fix Windows build by including CGFunctionInfo.h. CodeGenTypes.h instantiates llvm::FoldingSet<> with CGFunctionInfo, and VC++ doesn't like the static_cast from FoldingSetImpl::Node* to CGFunctionInfo* since it hasn't seen the definition of CGFunctionInfo and that it inherits from FoldingSetImpl::Node. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193722 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
0f7c47b20a4cf6afcfaf2f9805e753243fcc5365 |
|
25-Oct-2013 |
Mark Lacey <mark.lacey@apple.com> |
Remove unused CodeGenOptions from CodeGenTypes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193376 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
c3f7fd67c8431ab1494f2d14725f5da03554365b |
|
10-Oct-2013 |
Mark Lacey <mark.lacey@apple.com> |
Make CodeGenTypes data members private. No functionality differences. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192390 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
64aa4b3ec7e62288e2e66c1935487ece995ca94b |
|
17-Apr-2013 |
John McCall <rjmccall@apple.com> |
Standardize accesses to the TargetInfo in IR-gen. Patch by Stephen Lin! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
3b844ba7d5be205a9b4f5f0b0d1b7978977f4b8c |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Rewrite #includes for llvm/Foo.h to llvm/IR/Foo.h as appropriate to reflect the migration in r171366. Re-sort the #include lines to reflect the new paths. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
e56bb36e8eea89bae7dfe6eb6ea0455af126bf4a |
|
07-Dec-2012 |
John McCall <rjmccall@apple.com> |
Fix the required args count for variadic blocks. We were emitting calls to blocks as if all arguments were required --- i.e. with signature (A,B,C,D,...) rather than (A,B,...). This patch fixes that and accounts for the implicit block-context argument as a required argument. In addition, this patch changes the function type under which we call unprototyped functions on platforms like x86-64 that guarantee compatibility of variadic functions with unprototyped function types; previously we would always call such functions under the LLVM type T (...)*, but now we will call them under the type T (A,B,C,D,...)*. This last change should have no material effect except for making the type conventions more explicit; it was a side-effect of the most convenient implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169588 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
55fc873017f10f6f566b182b70f6fc22aefa3464 |
|
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort all of Clang's files under 'lib', and fix up the broken headers uncovered. This required manually correcting all of the incorrect main-module headers I could find, and running the new llvm/utils/sort_includes.py script over the files. I also manually added quite a few missing headers that were uncovered by shuffling the order or moving headers up to be main-module-headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169237 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
25a6a84cf5067b32c271e3ba078676dee838798d |
|
08-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Move TargetData to DataLayout. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165395 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
0f3d0970dcdf6cf17550b86838dff12813968dbc |
|
07-Jul-2012 |
John McCall <rjmccall@apple.com> |
Distinguish more carefully between free functions and C++ instance methods in the ABI arrangement, and leave a hook behind so that we can easily tweak CCs on platforms that use different CCs by default for C++ instance methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159894 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
de5d3c717684f3821b8db58037bc7140acf134aa |
|
17-Feb-2012 |
John McCall <rjmccall@apple.com> |
Whether an argument is required (in contrast with being an optional argument passed through the variadic ellipsis) potentially affects how we need to lower it. Propagate this information down to the various getFunctionInfo(...) overloads on CodeGenTypes. Furthermore, rename those overloads to clarify their distinct purposes, and make sure we're calling the right one in the right place. This has a nice side-effect of making it easier to construct a function type, since the 'variadic' bit is no longer separable. This shouldn't really change anything for our existing platforms, with one minor exception --- we should now call variadic ObjC methods with the ... in the "right place" (see the test case), which I guess matters for anyone running GNUStep on MIPS. Mostly it's just a substantial clean-up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
686775deca8b8685eb90801495880e3abdd844c2 |
|
20-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
now that we have a centralized place to do so, add some using declarations for some common llvm types: stringref and smallvector. This cleans up the codebase quite a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
2acc6e3feda5e4f7d9009bdcf8b1cd777fecfe2d |
|
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
de-constify llvm::Type, patch by David Blaikie! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135370 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
71305cc81bd379ddb8aa0d49e268267383202ca9 |
|
15-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
Enhance the IR type lowering code to be much smarter about recursively lowering types. Fore xample, we used to lower: struct bar { int a; }; struct foo { void (*FP)(struct bar); } G; to: %struct.foo = type { {}* } since the function pointer would cause recursive translation of bar and we didn't know if that would get us into trouble. We are now smart enough to know that it is fine, so we get this type instead: %struct.foo = type { void (i32)* } Codegen still needs to be prepared for uncooperative types at any place, which is why I let the maximally uncooperative code sit around for awhile to help shake out the bugs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135244 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
57eb23f34ed2586069273c66f1a9994fe2b42967 |
|
10-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
keep track of whether being in a RS_StructPointer state caused us to skip layout out a function accurately. If so, flush the type cache for both the function and struct case to ensure that any pointers to the functions get recomputed. This is overconservative, but with this patch clang can build itself again. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134863 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
f742eb0196e1b25c0b71e91da4a2b856d16a1dab |
|
10-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
Rename CGT::VerifyFuncTypeComplete to isFuncTypeConvertible since it is a predicate, not an action. Change the return type to be a bool, not the incomplete member. Enhace it to detect the recursive compilation case, allowing us to compile Eli's testcase on llvmdev: struct T { struct T (*p)(void); } t; into: %struct.T = type { {}* } @t = common global %struct.T zeroinitializer, align 8 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134853 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
9cbe4f0ba01ec304e1e3d071c071f7bca33631c0 |
|
09-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
clang side to match the LLVM IR type system rewrite patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134831 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
08d4792bb5d9e0e7f122c6273636807029c06aaa |
|
21-Jun-2011 |
Daniel Dunbar <daniel@zuster.org> |
IRgen: Add CGOptions to CGTypes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133530 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
fd05ca03abdfb38f78b9535d996ecc9c39d3b0db |
|
14-Jun-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Move GlobalDecl to AST git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132973 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
42e06119496e84e74cfc60230b18fcb53b35eb1c |
|
15-May-2011 |
John McCall <rjmccall@apple.com> |
More killing of std::vector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131374 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
e0047b13f0025fa1588f1b776592ed3458b226d6 |
|
21-Apr-2011 |
Anders Carlsson <andersca@mac.com> |
Don't add type names for enums; they're never used in LLVM IR. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129894 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
6aed2a1e4be4c2335d594d27cc3947b0faacd4ac |
|
17-Apr-2011 |
Anders Carlsson <andersca@mac.com> |
Add addBaseSubobjectTypeName which isn't used yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129671 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
e9742b0f7281d0a21b79e661ec8879e01c4a02e4 |
|
17-Apr-2011 |
Anders Carlsson <andersca@mac.com> |
Move code to add a type name to a TagDecl type out into a helper function. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
d26bc76c98006609002d9930f8840490e88ac5b5 |
|
09-Mar-2011 |
John McCall <rjmccall@apple.com> |
Use the "undergoes default argument promotion" bit on parameters to simplify the logic of initializing function parameters so that we don't need both a variable declaration and a type in FunctionArgList. This also means that we need to propagate the CGFunctionInfo down in a lot of places rather than recalculating it from the FAL. There's more we can do to eliminate redundancy here, and I've left FIXMEs behind to do it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127314 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
9c6082fe89c61af697f017aa80937581cc2128d8 |
|
02-Mar-2011 |
Tilmann Scheller <tilmann.scheller@googlemail.com> |
Revert "Add CC_Win64ThisCall and set it in the necessary places." This reverts commit 126863. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126886 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
88d117c2eedd7c5bec57ac983a98d5e12bdd2cc6 |
|
02-Mar-2011 |
Tilmann Scheller <tilmann.scheller@googlemail.com> |
Add CC_Win64ThisCall and set it in the necessary places. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126863 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
f4c7371fb1d3cebcfb40abad4537bb82515704ea |
|
19-Jan-2011 |
John McCall <rjmccall@apple.com> |
Change QualType::getTypePtr() to return a const pointer, then change a thousand other things which were (generally inadvertantly) relying on that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123814 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
c8f01ebbce3c874b43ee78535f7d179517f5f436 |
|
24-Nov-2010 |
Anders Carlsson <andersca@mac.com> |
Make CodeGenTypes::getCGRecordLayout compute the layout lazily if it doesn't exist. This matches ASTContext::getASTRecordLayout and is less confusing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120107 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
9cac4942b920d4c5514e71949e3062ed626bfbdf |
|
19-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116798 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
4c40d98ab7acf5f27fa89b17bd8fc0ef7683df37 |
|
31-Aug-2010 |
John McCall <rjmccall@apple.com> |
Teach IR generation to return 'this' from constructors and destructors under the ARM ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112588 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
f16aa103d3afd42fbca2ab346f191bf745cec092 |
|
22-Aug-2010 |
John McCall <rjmccall@apple.com> |
Go back to asking CodeGenTypes whether a type is zero-initializable. Make CGT defer to the ABI on all member pointer types. This requires giving CGT a handle to the ABI. It's way easier to make that work if we avoid lazily creating the ABI. Make it so. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
800588fd230d2c37ddce8fbf4a3881352715d700 |
|
29-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
Kill off the 'coerce' ABI passing form. Now 'direct' and 'extend' always have a "coerce to" type which often matches the default lowering of Clang type to LLVM IR type, but the coerce case can be handled by making them not be the same. This simplifies things and fixes issues where X86-64 abi lowering would return coerce after making preferred types exactly match up. This caused us to compile: typedef float v4f32 __attribute__((__vector_size__(16))); v4f32 foo(v4f32 X) { return X+X; } into this code at -O0: define <4 x float> @foo(<4 x float> %X.coerce) nounwind { entry: %retval = alloca <4 x float>, align 16 ; <<4 x float>*> [#uses=2] %coerce = alloca <4 x float>, align 16 ; <<4 x float>*> [#uses=2] %X.addr = alloca <4 x float>, align 16 ; <<4 x float>*> [#uses=3] store <4 x float> %X.coerce, <4 x float>* %coerce %X = load <4 x float>* %coerce ; <<4 x float>> [#uses=1] store <4 x float> %X, <4 x float>* %X.addr %tmp = load <4 x float>* %X.addr ; <<4 x float>> [#uses=1] %tmp1 = load <4 x float>* %X.addr ; <<4 x float>> [#uses=1] %add = fadd <4 x float> %tmp, %tmp1 ; <<4 x float>> [#uses=1] store <4 x float> %add, <4 x float>* %retval %0 = load <4 x float>* %retval ; <<4 x float>> [#uses=1] ret <4 x float> %0 } Now we get: define <4 x float> @foo(<4 x float> %X) nounwind { entry: %X.addr = alloca <4 x float>, align 16 ; <<4 x float>*> [#uses=3] store <4 x float> %X, <4 x float>* %X.addr %tmp = load <4 x float>* %X.addr ; <<4 x float>> [#uses=1] %tmp1 = load <4 x float>* %X.addr ; <<4 x float>> [#uses=1] %add = fadd <4 x float> %tmp, %tmp1 ; <<4 x float>> [#uses=1] ret <4 x float> %add } This implements rdar://8248065 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
a9fa85841102e81daaa23650d89b120fe9dacedc |
|
01-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
fix rdar://8147692 - yet another crash due to my abi work. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107387 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
bcaedaed309ce453a992fdeef4a4c908cc7d9dfb |
|
30-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
Reapply: r107173, "fix PR7519: after thrashing around and remembering how all this stuff" r107216, "fix PR7523, which was caused by the ABI code calling ConvertType instead" This includes a fix to make ConvertTypeForMem handle the "recursive" case, and call it as such when lowering function types which have an indirect result. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107310 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
7bbe03d8ae0772d89f6539d073dd43e49268a42c |
|
30-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Revert r107173, "fix PR7519: after thrashing around and remembering how all this stuff", it broke bootstrap. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107232 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
a9e05156438dc3f0ef1067ffce80037d9333e022 |
|
30-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Revert r107216, "fix PR7523, which was caused by the ABI code calling ConvertType instead", it is part of a boostrap breaking sequence. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
f1d5d8a7f217119063232f72f74cdba4bebbd714 |
|
30-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR7523, which was caused by the ABI code calling ConvertType instead of ConvertTypeRecursive when it needed to in a few cases, causing pointer types to get resolved at the wrong time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107216 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
376fe5e7800dface235c5382b39d77790d39dfa7 |
|
29-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR7519: after thrashing around and remembering how all this stuff works, the fix is quite simple: just make sure to call ConvertTypeRecursive when the function type being lowered is in the midst of ConvertType. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107173 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
c00129a08c829bb34f22dc13727043c994c85644 |
|
30-May-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Fix for PR7040: Don't try to compute the LLVM type for a function where it isn't possible to compute. This patch is mostly refactoring; the key change is the addition of the code starting with the comment, "Check whether the function has a computable LLVM signature." The solution here is essentially the same as the way the vtable code handles such functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105151 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
c39211d2aef5b8ca2bc69c9fb81ca3dfb3711eb0 |
|
18-May-2010 |
Anders Carlsson <andersca@mac.com> |
Add CodeGenTypes::ContainsPointerToDataMember overload that takes a CXXRecordDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104011 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
3e5af908ebf4c56b657c488bb2ca22f418e0868b |
|
14-May-2010 |
Anders Carlsson <andersca@mac.com> |
Move ContainsPointerToDataMember to CodeGenTypes. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103792 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
046c294a43024874ff35656c6e785b64e72f1f36 |
|
17-Apr-2010 |
Anders Carlsson <andersca@mac.com> |
Vtable -> VTable renames across the board. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
ce2b41dab3378750a79db518ab3ba8a5c8f39457 |
|
16-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
tidy up git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
6876fe615e16b0e76c7711e129e470305b7e9d41 |
|
31-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Minor include pruning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100007 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
198bcb44b6271c92fd856403f34b518828100aac |
|
31-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
IRGen: Move the auxiliary data structures tracking AST -> LLVM mappings out of CodeGenTypes, to per-record CGRecordLayout structures. - I did a cursory check that this was perf neutral, FWIW. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
270e203b50ed8791e61afd357596bcf050cf2bfd |
|
31-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
IRGen: Hide CGRecordLayoutBuilder class, because I can. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99967 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
7c465b9e19453789e8be470ee0ddfba3d74b6310 |
|
31-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
IRGen: Narrow getCGRecordLayout type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
2924ade97ee4228fcf3518d89cd4bd1653236b48 |
|
31-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
IRgen: Move CGRecordLayout to its own happy little file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99945 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
f858da63ace0c810b6d6c67b3784b230c7d2417b |
|
31-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
Minor formatting/FIXME cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99944 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
264ba48dc98f3f843935a485d5b086f7e0fdc4f1 |
|
30-Mar-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
the big refactoring bits of PR3782. This introduces FunctionType::ExtInfo to hold the calling convention and the noreturn attribute. The next patch will extend it to include the regparm attribute and fix the bug. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
ead608af31b6c9abeae1ca6d0b75094dac4641c0 |
|
26-Feb-2010 |
John McCall <rjmccall@apple.com> |
Use the power of types to track down another canonicalization bug in the ABI-computation interface. Fixes <rdar://problem/7691046>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97197 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
0b0ef0a70b8010c66fad2603e4423ef1c1dc7015 |
|
24-Feb-2010 |
John McCall <rjmccall@apple.com> |
Canonicalize parameter and return types before computing ABI info. Eliminates a common source of oddities and, in theory, removes some redundant ABI computations. Also fixes a miscompile I introduced yesterday by refactoring some code and causing a slightly different code path to be taken that didn't perform *parameter* type canonicalization, just normal type canonicalization; this in turn caused a bit of ABI code to misfire because it was looking for 'double' or 'float' but received 'const float'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97030 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
c0bf462cf35fe050bddbd8bff967298e4a67e79d |
|
23-Feb-2010 |
John McCall <rjmccall@apple.com> |
Perform two more constructor/destructor code-size optimizations: 1) emit base destructors as aliases to their unique base class destructors under some careful conditions. This is enabled for the same targets that can support complete-to-base aliases, i.e. not darwin. 2) Emit non-variadic complete constructors for classes with no virtual bases as calls to the base constructor. This is enabled on all targets and in theory can trigger in situations that the alias optimization can't (mostly involving virtual bases, mostly not yet supported). These are bundled together because I didn't think it worthwhile to split them, not because they really need to be. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96842 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
b2bcf1c176b200b36f371e189ce22f93c86cdf45 |
|
06-Feb-2010 |
Anders Carlsson <andersca@mac.com> |
Use the correct function info for constructors when applying function attributes. Fixes PR6245. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
04a67a6aa3dfdc92d57f7f8d93ba397348c868a4 |
|
05-Feb-2010 |
John McCall <rjmccall@apple.com> |
Standardize the parsing of function type attributes in a way that follows (as conservatively as possible) gcc's current behavior: attributes written on return types that don't apply there are applied to the function instead, etc. Only parse CC attributes as type attributes, not as decl attributes; don't accepet noreturn as a decl attribute on ValueDecls, either (it still needs to apply to other decls, like blocks). Consistently consume CC/noreturn information throughout codegen; enforce this by removing their default values in CodeGenTypes::getFunctionInfo(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95436 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
2c12d0319a267b844cb7d569d84426cd344b90f7 |
|
02-Feb-2010 |
Anders Carlsson <andersca@mac.com> |
Improve handling of emitting 'null' pointers to data members. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95066 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
82d0a418c8699fc6f4a9417457ffe93d43bba1c1 |
|
10-Jan-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Generalize target weirdness handling having proper layering in mind: 1. Add helper class for sema checks for target attributes 2. Add helper class for codegen of target attributes As a proof-of-concept - implement msp430's 'interrupt' attribute. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93118 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
1a5e0d7f18485e4fb958f96dcddff3e4486a4069 |
|
01-Dec-2009 |
Anders Carlsson <andersca@mac.com> |
Have ASTRecordLayout keep track of the key function, in preparation of fixing a synthetic ctor/dtor bug. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90168 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
f6c56e2323c3f973253805a2f35629f3253ebed4 |
|
25-Nov-2009 |
Anders Carlsson <andersca@mac.com> |
Add VTT parameter to base ctors/dtors with virtual bases. (They aren't used yet). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89835 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
ecf282b0486873309fd58ec4d3ec0dbf983b33d4 |
|
24-Nov-2009 |
Anders Carlsson <andersca@mac.com> |
It is common for vtables to contain pointers to functions that have either incomplete return types or incomplete argument types. Handle this by returning the llvm::OpaqueType for those cases, which CodeGenModule::GetOrCreateLLVMFunction knows about, and treats as being an "incomplete function". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89736 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
444be7366d0a1e172c0290a1ea54c1cb16b5947c |
|
13-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Wherein the TargetInfo argument to Preprocessor is made 'const' and propogated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
5017a157c6c5462ea1d4154d7d758ee3d277b735 |
|
12-Oct-2009 |
Anders Carlsson <andersca@mac.com> |
Store the key function of a record decl inside CGRecordLayout. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
375c31c4673f83f925de221752cf801c2fbbb246 |
|
03-Oct-2009 |
Anders Carlsson <andersca@mac.com> |
Implement code generation of member function pointer calls. Fixes PR5121. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83271 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
bac7c250c9b098ee3d637c8ed77da62e860d9244 |
|
12-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add CallingConvention argument to CGFunctionInfo. - Currently unused. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81581 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
1eb4433ac451dc16f4133a88af2d002ac26c58ef |
|
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tabs, and whitespace cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
ad3e7118c40711faf5f51f08d599dbd525d3408a |
|
24-Aug-2009 |
Anders Carlsson <andersca@mac.com> |
More member pointer work. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79922 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
fc3eaa47fa2ef70ab21131005c328adda3020737 |
|
23-Aug-2009 |
Anders Carlsson <andersca@mac.com> |
More work towards zero-initializing structs that contain member pointers in constant expressions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
341bdf8d565f5282779a0ffd2d2b77f3a38b735e |
|
23-Aug-2009 |
Anders Carlsson <andersca@mac.com> |
Remove the PaddingFields member from CGRecordLayout, it wasn't used anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79799 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
f21efe9088a0b3eda1209d1706529f6cb2073092 |
|
11-Aug-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
LLVMContext is a class now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78691 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
47a434ff3d49e7906eda88e8e8242e4297725b32 |
|
06-Aug-2009 |
Owen Anderson <resistor@mac.com> |
Update for LLVM API change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78259 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
8330ceeebb3bfac31116b387b90ff2ce3cef85e4 |
|
23-Jul-2009 |
Anders Carlsson <andersca@mac.com> |
Move the LLVM field number for bit fields into the BitFieldInfo structure, since it's meaning is completely different than for non-bit fields. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76882 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
45372a6fdcd2b0840704569478db456822e02bae |
|
23-Jul-2009 |
Anders Carlsson <andersca@mac.com> |
Check in CGRecordLayoutBuilder which is a reimplementation of the record layout code. (Yay, no more packed structs unless absolutely necessary). We currently don't use the layouts being built but that will change when the new code is mature enough :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76845 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
412f59b23fc502b199b9ca96c72ef5d5ad21d62b |
|
22-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Don't convert interface types (to structs) as part of CodeGenTypes. - This has pros and cons, but for now the pros seem to significantly outway the con. The con is that we will always need to cast in the runtime implementation to a struct type, if we wish to access an interface directly. The pros are: - Avoid the cost of generating types which are used. Most manipulation of Objective-C objects is done through messages, and only the implementation of a class will directly access memory. Previously, we would convert the type even if it only appear as a function parameter, for example. - We don't need to worry about incomplete types, and UpdateCompletedType for interfaces is gone. - It becomes easier to narrow the interface to the shadow struct for Objective-C interfaces (so it can be eliminated). Currently the runtimes still use the CodeGenTypes machinery to generate the LLVM structure they need via ConvertTagDecl, but this can eventually be replaced. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69797 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
a17d7ccc2ed77e321855990e180f2a34ec304bfc |
|
08-Apr-2009 |
Anders Carlsson <andersca@mac.com> |
Don't assume that a block always has a FunctionProtoType. Fixes rdar://6768379. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68583 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
5529b24500a9cdeb45e9d4482ceb54fc39a7471e |
|
06-Apr-2009 |
Anders Carlsson <andersca@mac.com> |
Add a getFunctionInfo that takes a BlockPointerType. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
f6f8ae561ef78af169cbd2c067cae7ee4b2044e9 |
|
04-Apr-2009 |
Anders Carlsson <andersca@mac.com> |
Add a getFunctionInfo that takes a CXXMethodDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
285d0dba947b7c9960eaa88e8c4fced0398d4319 |
|
01-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
fix the two xfails I added with a previous patch by making ObjC interface types get completed when their definition is seen if previously laid out by the code generator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68177 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
636efb6ee4382e6fc16724014e9cf70dbeb37c31 |
|
31-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
remove a dead prototype git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
b3b6b9b27ab8bdb2a435a5a92ce62e74e3399377 |
|
05-Mar-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Initial implementation of CodeGen for incomplete function types; fixes PR3688. (The FIXME is a rather big performance issue, but it only affects code using this feature, which is relatively rare.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66128 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
57a84fb51de4f3de50debcf12dd194af8c6aaa58 |
|
03-Mar-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix for PR3687: use the memory representation for booleans when a sub-type describes a memory location, like the pointee type of a pointer or the element type of an array. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65925 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
72564e73277e29f6db3305d1f27ba408abb7ed88 |
|
27-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Create a new TypeNodes.def file that enumerates all of the types, giving them rough classifications (normal types, never-canonical types, always-dependent types, abstract type representations) and making it far easier to make sure that we've hit all of the cases when decoding types. Switched some switch() statements on the type class over to using this mechanism, and filtering out those things we don't care about. For example, CodeGen should never see always-dependent or non-canonical types, while debug info generation should never see always-dependent types. More switch() statements on the type class need to be moved over to using this approach, so that we'll get warnings when we add a new type then fail to account for it somewhere in the compiler. As part of this, some types have been renamed: TypeOfExpr -> TypeOfExprType FunctionTypeProto -> FunctionProtoType FunctionTypeNoProto -> FunctionNoProtoType There shouldn't be any functionality change... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65591 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
68694ada8f4d8f6c4b00ea5b900df96428b28fc8 |
|
26-Feb-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove PointerLikeType. - Having pointers and references share a base was not a useful notion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65567 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
6aeae7fa9cfaacba3a4077d62c01c2531d88a63e |
|
26-Feb-2009 |
Daniel Dunbar <daniel@zuster.org> |
Change PointersToResolve to list the pointee type to resolve, not the pointer type. - Drops use of PointerLikeType. - No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65566 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
40a6be686e5d5bb4198f1affda574e8a4b3a7710 |
|
03-Feb-2009 |
Daniel Dunbar <daniel@zuster.org> |
Memoize CGFunctionInfo construction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
541b63b1a9db77e4a8670e9823711c2c12e58afb |
|
03-Feb-2009 |
Daniel Dunbar <daniel@zuster.org> |
Thread CGFunctionInfo construction through CodeGenTypes. - Inefficient & leaks memory currently, will be cleaned up subsequently. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63567 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
bb36d331f439f49859efcfb4435c61762fbba6f9 |
|
02-Feb-2009 |
Daniel Dunbar <daniel@zuster.org> |
ABI handling API changes. - Lift CGFunctionInfo creation up to callers of EmitCall. - Move isVariadic bit out of CGFunctionInfo, take as argument to GetFunctionType instead. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63550 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
36b5f5ee026b6725bff9c5b8faba635d7dfeeb7d |
|
31-Jan-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove unused overload of GetFunctionType. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63472 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
725ad31086e3d6c41afa10c43db44f2e7060a961 |
|
31-Jan-2009 |
Daniel Dunbar <daniel@zuster.org> |
Kill off CGCallInfo, always use CGFunctionInfo for encapsulating function/call info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63466 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
fd64bb635dc221baa19f81d5d2a084f7eb269f7f |
|
15-Dec-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Code gen. for ivar references; including bitfield ivars. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61043 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
6b1da0ea19c12346192f5ea4d70872c13bfcc82a |
|
13-Oct-2008 |
Daniel Dunbar <daniel@zuster.org> |
Lift out ABIInfo abstract base class. - Currently still lives in CGCall.cpp but is intended to be the target specific place for hooking ABI information. - Select ABIInfo to use based on Target's prefix and pointer width. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57445 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
5627377df5439a1d3d46a4e4cef4ae44f84a322b |
|
17-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add support for ABIArgInfo::Expand - No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56269 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
62d5c1b5038cdaa4a887a03c37fe1e8d00166ea0 |
|
10-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add CodeGenTypes::GetFunctionType overload for getting the effective type of a call. Change NeXT runtime to use this instead of trying to bitcasting internally (which doesn't respect the ABI). Fix subtle bug, use of ConvertTypeRecursive instead of ConvertType is bad inside GetFunctionType. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56050 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
45c25ba11cbf8c9a461def5b03f6ee9481e06769 |
|
10-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Move FunctionType conversion into CGCall.cpp: - Added CodeGenTypes::GetFunctionType, taking a CGFunctionInfo. - Updated Obj-C runtimes to use this instead of rolling the llvm::FunctionType by hand. - Killed CodeGenTypes::{ConvertReturnType, DecodeArgumentTypes}. Add ABIArgInfo class to encapsulate ABI decision of how to lower types to LLVM. - Will move to target sometime soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
efb6d0dc3eafbcf4f8cd053138bd1abed1dda8d4 |
|
06-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Key LLVM types for TagDecl's off of the clang Type, since there is now a many-to-one relationship between TagDecl's and types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55870 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
b7cfe88e88cb4f46308de89cf3f0c81bfe624128 |
|
30-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
Make a few related changes: 1) add a new ASTContext::getFloatTypeSemantics method. 2) Use it from SemaExpr.cpp, CodeGenTypes.cpp and other places. 3) Change the TargetInfo.h get*Format methods to return their fltSemantics byref instead of by pointer. 4) Change CodeGenFunction::EmitBuiltinExpr to allow builtins which sometimes expand specially and othertimes fall back to libm. 5) Add support for __builtin_nan("") to codegen, cases that don't pass in an empty string are currently lowered to libm calls. 6) Fix codegen of __builtin_infl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52914 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
4111024be81e7c0525e42dadcc126d27e5bf2425 |
|
17-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
Change self/_cmd to be instances of ImplicitParamDecl instead of ParmVarDecl. Patch by David Chisnall! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52422 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
fce71b8ea53b6eb9c1630da24659289bc848f837 |
|
03-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Fix PR2081 (problems codegen'ing some recursive structures) patch by Lauro Venancio! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49144 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
391d77a26382dddf25da73e29fc1fa5aaaea4c6f |
|
31-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
Add initial support for objc codegen for methods, ivars, and the etoile runtime, patch by David Chisnall! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|
bda0b626e74513950405c27525af87e214e605e2 |
|
16-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
Make a major restructuring of the clang tree: introduce a top-level lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48402 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CodeGenTypes.h
|