[llvm-commits] [llvm] r38506 - in /llvm/trunk: lib/VMCore/Verifier.cpp test/Verifier/byval-1.ll test/Verifier/byval-2.ll test/Verifier/byval-3.ll test/Verifier/byval-4.ll

Rafael Espindola espindola at google.com
Tue Jul 17 08:16:56 PDT 2007


> could you please explain this some more.  Are you saying that the copy
> has to be placed very specifically in the stack frame, or does it not
> matter very much where it is?  Since an offset to it is passed to the
> callee I guessed that it doesn't matter much were it is exactly.

The offset is deduced from the function signature. So if you have a
function like

void f(struct s a, long b, long c, long d, long e, long f, long g, long h)

where the struct is big, both the struct and "h" are going to be in
known locations on the stack slot. If the FE calls alloc for the
structure but expects the BE to allocate stack space for "h", the FE
would have to pass a lot of information down to the BE.

Cheers,
-- 
Rafael Avila de Espindola

Google Ireland Ltd.
Gordon House
Barrow Street
Dublin 4
Ireland

Registered in Dublin, Ireland
Registration Number: 368047



More information about the llvm-commits mailing list