[LLVMdev] RFC: llvm-convert.cpp Patch

Duncan Sands baldrick at free.fr
Wed Nov 7 10:23:14 PST 2007


> How about this patch then?

How about this one :)  It passes alignment and volatility around
with DestLoc.  It's not finished because I noticed some bugs in
how CopyAggregate and ZeroAggregate handle alignment (problem points
marked with "QQ").  Also, I noticed potential problems with how we
handle call arguments and return results (what if they are strangely
aligned/volatile?), marked with FIXME.

While there, I fixed the following:
- Taught EmitAggregateZero not to do element by element zeroing
if the LLVM type doesn't cover the gcc type.  Also, not to do
it if there are too many aggregate elements.
- Added a bunch of missing alignment/volatile stuff on various
loads and stores.
- Fixed up a lot of bogus handling of volatility in the complex
number stuff.

Ciao,

D.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: align.diff
Type: text/x-diff
Size: 43684 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20071107/69436f29/attachment.diff>


More information about the llvm-dev mailing list