- Apr 01, 2009
-
-
Daniel Dunbar authored
- Small structures are returned in a register if: 1. They fit nicely in a register. 2. All fields fit nicely in a register. (more or less) - We now pass the first 5000 ABITests if unions are disabled. - <rdar://problem/6497882> [irgen] x86-32 ABI compatibility with small structs llvm-svn: 68197
-
Daniel Dunbar authored
element structures", which have different ABI rules. - Current return-arguments-32 status is: 1 out of 1000 failures (-7) - Also, vectors inside "single element structs" require special handling. llvm-svn: 68196
-
Daniel Dunbar authored
- Current return-arguments-32 status is: 8 out of 1000 failures (-7) llvm-svn: 68192
-
- Mar 31, 2009
-
-
Daniel Dunbar authored
- Current return-arguments-32 status: 15/1000 failures llvm-svn: 68132
-
- Mar 29, 2009
-
-
Eli Friedman authored
really intending to take ownership of this; I wrote this mostly because I was curious about how the ARM ABI works. It should be a decent start, though. llvm-svn: 67969
-
- Mar 24, 2009
-
-
Eli Friedman authored
llvm-svn: 67577
-
- Mar 22, 2009
-
-
Chris Lattner authored
build. This shaves another 3% off. llvm-svn: 67460
-
- Mar 18, 2009
-
-
Daniel Dunbar authored
readnone/readonly attributes. llvm-svn: 67224
-
- Mar 11, 2009
-
-
Daniel Dunbar authored
- This is an ABI incompatiblity, but this is not likely to be a huge deal in practice. For now we at least generate self consistent code instead of crashing. - <rdar://problem/6657601> x86-32 ABI: Bitfields in small structures are not passed correctly llvm-svn: 66713
-
- Mar 10, 2009
-
-
Daniel Dunbar authored
llvm-svn: 66555
-
- Mar 06, 2009
-
-
Daniel Dunbar authored
in a lone X87 class. - PR3735. llvm-svn: 66277
-
- Mar 02, 2009
-
-
Daniel Dunbar authored
- No intended functionality change. llvm-svn: 65805
-
- Feb 27, 2009
-
-
Douglas Gregor authored
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... llvm-svn: 65591
-
- Feb 26, 2009
-
-
Daniel Dunbar authored
- For types whose native representation is a pointer. - Use to replace ExprConstant.cpp:HasPointerEvalType, CodeGenFunction::isObjCPointerType. llvm-svn: 65569
-
Daniel Dunbar authored
- No functionality change. llvm-svn: 65560
-
Anders Carlsson authored
llvm-svn: 65533
-
Daniel Dunbar authored
- <rdar://problem/6622451> Bad x86_64 code gen for message call taking one argument. llvm-svn: 65510
-
- Feb 25, 2009
-
-
Daniel Dunbar authored
code) when calling noreturn functions; general expression emission isn't ready to do the right thing in all cases. llvm-svn: 65473
-
- Feb 23, 2009
-
-
Daniel Dunbar authored
- No functionality change. llvm-svn: 65325
-
- Feb 22, 2009
-
-
Daniel Dunbar authored
memory using Indirect; this was a holdover from when CGCall wasn't as robust. llvm-svn: 65278
-
Daniel Dunbar authored
as byval. Otherwise LLVM will have its own opinion about where to put things. We now pass all gcc dg.compat tests on x86_64. llvm-svn: 65266
-
Daniel Dunbar authored
about these much but <2 x i16> shows up in the gcc test suite. llvm-svn: 65264
-
Daniel Dunbar authored
Also, make sure to pass <1 x i64> as i64 (not <1 x i64>, which doesn't quite work yet in the backend). llvm-svn: 65262
-
- Feb 20, 2009
-
-
Daniel Dunbar authored
clear insertion point. The rest of IRgen should theoretically take advantage of this to avoid emitting dead code. Theory != Practice. llvm-svn: 65141
-
Daniel Dunbar authored
- Remove an unused variant of EmitCallExpr overload. llvm-svn: 65130
-
Chris Lattner authored
llvm-svn: 65114
-
- Feb 18, 2009
-
-
Daniel Dunbar authored
We are down to only failing gcc.dg/compat/vector-[12] (8 tests total). llvm-svn: 64967
-
Daniel Dunbar authored
Two more gcc/x86_64 failures down. llvm-svn: 64963
-
Daniel Dunbar authored
things passed in mixed registers. This knocks out 8 x86_64 failures. llvm-svn: 64958
-
Daniel Dunbar authored
1. Return of _Complex long double used wrong type. 2. va_arg of types passed in two SSE registers didn't account for extra space in register save area. Down to 18 failures on gcc/compat/x86_64. Combined 32/64 results are: -- === gcc Summary === # of expected passes 1292 # of unexpected failures 34 # of unsupported tests 2 -- llvm-svn: 64880
-
- Feb 17, 2009
-
-
Daniel Dunbar authored
llvm-svn: 64756
-
Daniel Dunbar authored
llvm-svn: 64727
-
Daniel Dunbar authored
llvm-svn: 64701
-
- Feb 14, 2009
-
-
Daniel Dunbar authored
ASTContext types. llvm-svn: 64533
-
Daniel Dunbar authored
important for both keeping the generated LLVM simple and for ensuring that integer types are passed/promoted correctly. llvm-svn: 64529
-
- Feb 13, 2009
-
-
Daniel Dunbar authored
- Now at 1274 passes on gcc compat suite vs 1262. llvm-svn: 64469
-
- Feb 12, 2009
-
-
Daniel Dunbar authored
- Doesn't yet handle case where values are passed in mixed (general purpose & floating point) registers; otherwise largely functional. Code still needs some cleaning. Fixes: MultiSource/Applications/lua/lua MultiSource/Applications/siod/siod MultiSource/Applications/sqlite3/sqlite3 SingleSource/Regression/C/PR640 SingleSource/UnitTests/2003-07-09-SignedArgs SingleSource/UnitTests/2007-03-02-VaCopy gcc compat test suite results (Darwin x86-32 & -64): -- # of expected passes 1262 # of unexpected failures 56 # of unresolved testcases 34 # of unsupported tests 2 Compare to: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20090209/012050.html llvm-svn: 64370
-
- Feb 10, 2009
-
-
Daniel Dunbar authored
llvm-svn: 64235
-
Daniel Dunbar authored
llvm-svn: 64221
-
Daniel Dunbar authored
memory representation (e.g., bool). - This upgrades (downgrades) MultiSource/Applications/ClamAV/clamscan to a miscompile and fixes SingleSource/UnitTests/2003-05-31-CastToBool. llvm-svn: 64194
-