[PATCH] D80934: [AIX] Update data directives for AIX assembly

David Tenty via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 1 09:06:39 PDT 2020


daltenty created this revision.
daltenty added reviewers: hubert.reinterpretcast, Xiangling_L, jasonliu.
Herald added subscribers: llvm-commits, arphaman, kbarton, hiraditya, nemanjai.
Herald added a project: LLVM.

The standard data emission directives (e.g. .short, .long) in the AIX assembler
have the unintended consequence of aligning their output to the natural byte
boundary. This cause problems because we aren't expecting behavior from the
Data*bitsDirectives, so the final alignment of data isn't correct in some cases
on AIX.

This patch updated the Data*bitsDirectives .vbyte pseudo-ops instead to emit the
data, since we will emit the .align directives as needed. We update the existing
testcases and add a test for emission of struct data.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D80934

Files:
  llvm/lib/MC/MCAsmInfoXCOFF.cpp
  llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp
  llvm/test/CodeGen/PowerPC/aix-extern-weak.ll
  llvm/test/CodeGen/PowerPC/aix-extern.ll
  llvm/test/CodeGen/PowerPC/aix-lower-constant-pool-index.ll
  llvm/test/CodeGen/PowerPC/aix-lower-jump-table.ll
  llvm/test/CodeGen/PowerPC/aix-readonly-with-relocation.ll
  llvm/test/CodeGen/PowerPC/aix-reference-func-addr-const.ll
  llvm/test/CodeGen/PowerPC/aix-weak.ll
  llvm/test/CodeGen/PowerPC/aix-xcoff-data.ll
  llvm/test/CodeGen/PowerPC/aix-xcoff-lower-comm.ll
  llvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-const.ll
  llvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-str.ll
  llvm/test/CodeGen/PowerPC/aix-xcoff-rodata.ll
  llvm/test/CodeGen/PowerPC/test_func_desc.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D80934.267639.patch
Type: text/x-patch
Size: 34184 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200601/bd0bf61a/attachment.bin>


More information about the llvm-commits mailing list