search for: cxxtypewithcopyconstructor

Displaying 3 results from an estimated 3 matches for "cxxtypewithcopyconstructor".

2013 Jul 30
0
[LLVMdev] Proposing a new 'alloca' parameter attribute to implement the Microsoft C++ ABI
How do you handle this during codegen? One problem is avoid stack changes (like spills). Another is coordinating things that are using allocas and those that are not but end up in the stack. Consider void foo(int arg1, int arg2, int arg3, ....CXXTypeWithCopyConstructor argn, int argp1...) You will need an alloca for argn, but the ABI also requires it to be next to the plain integers that didn' fit in registers, no? This is part of the reason my suggestion was to have a single opaque object representing the frame being constructed and a getelementpointer like...
2013 Jul 30
1
[LLVMdev] Proposing a new 'alloca' parameter attribute to implement the Microsoft C++ ABI
...nts. I don't yet have a concrete plan for this, and it will require more familiarity with the backend than I currently have. Another is coordinating things that are using > allocas and those that are not but end up in the stack. Consider > > void foo(int arg1, int arg2, int arg3, ....CXXTypeWithCopyConstructor > argn, int argp1...) > > You will need an alloca for argn, but the ABI also requires it to be > next to the plain integers that didn' fit in registers, no? This is > part of the reason my suggestion was to have a single opaque object > representing the frame being constructed...
2013 Jul 25
4
[LLVMdev] Proposing a new 'alloca' parameter attribute to implement the Microsoft C++ ABI
Hi LLVM folks, To properly implement pass-by-value in the Microsoft C++ ABI, we need to be able to take the address of an outgoing call argument slot. This is http://llvm.org/PR5064 . Problem ------- On Windows, C structs are pushed right onto the stack in line with the other arguments. In LLVM, we use byval to model this, and it works for C structs. However, C++ records are also passed this