<br><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">lost</b> <span dir="ltr"><<a href="mailto:lostfreeman@gmail.com">lostfreeman@gmail.com</a>></span><br>Date: 2010/6/5<br>

Subject: Re: [LLVMdev] Passing structures by value on Windows<br>To: Anton Korobeynikov <<a href="mailto:anton@korobeynikov.info">anton@korobeynikov.info</a>><br><br><br>Ok, but how to bitcast structure? <a href="http://llvm.org/docs/LangRef.html#i_bitcast" target="_blank">Documentation</a> says that bitcast does not applicable to aggregate values.  <div class="im">

<br><br>2010/6/3 Anton Korobeynikov <<a href="mailto:anton@korobeynikov.info" target="_blank">anton@korobeynikov.info</a>>:<br></div><div><div></div><div class="h5">
>> Is this documented somethere?<br>> This is the standard assumption. The calling convention can be complex<br>> enough and operate with the language-dependent definitions (e.g. "C"<br>> structs, etc.), thus frontend should lower such constructs as needed.<br>


><br>> For reference, normal x86-64 ABI has pretty complex rules wrt passing<br>> aggregates by value. You might want to look into llvm-gcc as an<br>> example.<br>><br>> --<br>> With best regards, Anton Korobeynikov<br>


> Faculty of Mathematics and Mechanics, Saint Petersburg State University<br>><br><br>
</div></div></div><br>