aboutsummaryrefslogtreecommitdiff
path: root/lib/Frontend/ASTConsumers.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2012-07-31 02:44:24 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2012-07-31 02:44:24 +0000
commitb48280ba1790122cd3fa6e17c88ecd6a4571a4eb (patch)
treef9542b6b14db62a150a7af7d2cfb0b0d7d3b859f /lib/Frontend/ASTConsumers.cpp
parentd72f56de7c79828928147389aed2c6c46f331031 (diff)
Handle functions with struct arguments or return types and the regparm
attribute. It is a variation of the x86_64 ABI: * A struct returned indirectly uses the first register argument to pass the pointer. * Floats, Doubles and structs containing only one of them are not passed in registers. * Other structs are split into registers if they fit on the remaining ones. Otherwise they are passed in memory. * When a struct doesn't fit it still consumes the registers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161022 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Frontend/ASTConsumers.cpp')
0 files changed, 0 insertions, 0 deletions