<div dir="ltr"><div dir="ltr">Update: This might be an issue with optimization ordering. Forcing DAGCombiner::isAlias to return true (everything aliases) causes things to go as expected. The difference in architectures is because the alignment on other platforms is 4 bytes whereas on Windows it's 8, causing the alias analysis to succeed on Windows but not on other platforms.<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 14, 2021 at 6:32 PM Karl Rehm <<a href="mailto:klrehm123@gmail.com" target="_blank">klrehm123@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hello,</div><div>I'm trying to figure out why LLVM generates different code between Windows and other targets when it comes to a simple pointer dereference. I've narrowed it down to alignment, but I'm confused as to why this happens. Is this behavior intentional?<br></div><div><br></div><div><a href="https://godbolt.org/z/f18WxzW11" target="_blank">https://godbolt.org/z/f18WxzW11</a></div></div>
</blockquote></div></div>