]> granicus.if.org Git - clang/commit
fix rdar://8360877 a really nasty miscompilation in Boost.Xpressive
authorChris Lattner <sabre@nondot.org>
Wed, 1 Sep 2010 00:50:20 +0000 (00:50 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 1 Sep 2010 00:50:20 +0000 (00:50 +0000)
commit66e7b68b0016aeebe349e21ace93ff0178665d69
tree7f8cc4ecc9c3f28f7bb5497729da65a7971b59ce
parent645406a3d3405ad0f4b5a0e46a34ae92d9d23bd3
fix rdar://8360877 a really nasty miscompilation in Boost.Xpressive
caused by my ABI work.  Passing:

struct outer {
  int x;
  struct epsilon_matcher {} e;
  int f;
};

as {i32,i32} isn't safe, because the offset of the second element
needs to be at 8 when it is interpreted as a memory value.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112686 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/TargetInfo.cpp
test/CodeGenCXX/x86_64-arguments.cpp