]> granicus.if.org Git - clang/commit
Canonicalize parameter and return types before computing ABI info. Eliminates
authorJohn McCall <rjmccall@apple.com>
Wed, 24 Feb 2010 07:14:12 +0000 (07:14 +0000)
committerJohn McCall <rjmccall@apple.com>
Wed, 24 Feb 2010 07:14:12 +0000 (07:14 +0000)
commit0b0ef0a70b8010c66fad2603e4423ef1c1dc7015
tree966868d3abb3d5a6fbd635c376ea266afe069a19
parent152e785ce6cbbc068a5240daf7f3daacc7000bf4
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
lib/CodeGen/CGCall.cpp
lib/CodeGen/CGCall.h
lib/CodeGen/CodeGenTypes.h
lib/CodeGen/TargetInfo.cpp
test/CodeGen/functions.c
test/CodeGenObjC/messages-2.m