[PATCH] D127864: [AIX] add object mode -X option for llvm-ar in AIX OS.

Digger Lin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 15 07:56:56 PDT 2022


DiggerLin created this revision.
DiggerLin added reviewers: jhenderson, daltenty, hubert.reinterpretcast, stevewan, MaskRay.
Herald added subscribers: ormris, StephenFan, cmtice, rupprecht, emaste.
Herald added a reviewer: alexander-shaposhnikov.
Herald added a reviewer: rupprecht.
Herald added a project: All.
DiggerLin requested review of this revision.
Herald added subscribers: llvm-commits, aheejin.
Herald added a project: LLVM.

1. Added a new option bit mode  -X for llvm-ar.

In AIX OS  , there is a bit mode option -X for ar command. 
please see the "-X mode" part of  https://www.ibm.com/docs/ko/aix/7.1?topic=ar-command

Specifies the type of object file ar should examine. The mode must be one of the following:
**32**
Processes only 32-bit object files
**64**
Processes only 64-bit object files
**32_64**
Processes both 32-bit and 64-bit object files
**any**
Processes all of the supported object files.

The default is to process 32-bit object files (ignore 64-bit objects). The mode can also be set with the OBJECT_MODE environment variable. For example, OBJECT_MODE=64 causes ar to process any 64-bit objects and ignore 32-bit objects. The -X flag overrides the OBJECT_MODE variable.

2.before adding the new option -X, the default behaviors of llvm-ar  like -Xany,  but after the adding the new option -X, the default behaviors of llvm-ar  change to -X32 ,in order to   let some test cases which has 32bit and 64bit object file in the same llvm-ar command, we need to add the  "export OBJECT_MODE=any" into test case to change the default behaviors of llvm-ar's object mode.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D127864

Files:
  llvm/docs/CommandGuide/llvm-ar.rst
  llvm/test/Object/X86/archive-symbol-table.s
  llvm/test/Object/archive-symtab.test
  llvm/test/tools/llvm-ar/add-library.test
  llvm/test/tools/llvm-ar/default-add.test
  llvm/test/tools/llvm-ar/default-macho.test
  llvm/test/tools/llvm-ar/invalid-option-X.test
  llvm/test/tools/llvm-ar/macho-edit.test
  llvm/test/tools/llvm-ar/move.test
  llvm/test/tools/llvm-ar/mri-addlib.test
  llvm/test/tools/llvm-ar/mri-addmod.test
  llvm/test/tools/llvm-ar/mri-comments.test
  llvm/test/tools/llvm-ar/mri-end.test
  llvm/test/tools/llvm-ar/mri-thin-archive.test
  llvm/test/tools/llvm-ar/option-X.test
  llvm/test/tools/llvm-ar/quick-append.test
  llvm/test/tools/llvm-ar/reduce-thin-path.test
  llvm/test/tools/llvm-ar/regex-cmd.test
  llvm/test/tools/llvm-ar/replace-update.test
  llvm/test/tools/llvm-ar/replace.test
  llvm/test/tools/llvm-ar/symtab.test
  llvm/test/tools/llvm-ar/thin-archive.test
  llvm/test/tools/llvm-dwarfdump/X86/section_sizes_archive.test
  llvm/test/tools/llvm-libtool-darwin/L-and-l.test
  llvm/test/tools/llvm-libtool-darwin/archive-flattening.test
  llvm/test/tools/llvm-libtool-darwin/cpu-subtype-matching.test
  llvm/test/tools/llvm-libtool-darwin/create-static-lib.test
  llvm/test/tools/llvm-libtool-darwin/deterministic-library.test
  llvm/test/tools/llvm-libtool-darwin/filelist.test
  llvm/test/tools/llvm-libtool-darwin/universal-object-flattening.test
  llvm/test/tools/llvm-lipo/create-archive-input.test
  llvm/test/tools/llvm-nm/X86/archive-no-llvm-bc.test
  llvm/test/tools/llvm-nm/option-X.test
  llvm/test/tools/llvm-objcopy/ELF/basic-archive-copy.test
  llvm/test/tools/llvm-objcopy/ELF/deterministic-archive.test
  llvm/test/tools/llvm-objcopy/ELF/strip-all.test
  llvm/test/tools/llvm-objcopy/ELF/strip-debug.test
  llvm/test/tools/llvm-objcopy/MachO/archive-format.test
  llvm/test/tools/llvm-objdump/X86/disassemble-archive-with-source.ll
  llvm/test/tools/llvm-objdump/X86/warn-missing-disasm-func.test
  llvm/test/tools/llvm-objdump/all-headers.test
  llvm/test/tools/llvm-objdump/warn-missing-section.test
  llvm/test/tools/llvm-ranlib/D-flag.test
  llvm/test/tools/llvm-readobj/ELF/file-summary-json.test
  llvm/test/tools/llvm-readobj/ELF/stack-sizes.test
  llvm/test/tools/llvm-readobj/ELF/wrong-shstrtab-type.test
  llvm/test/tools/llvm-readobj/archive.test
  llvm/test/tools/llvm-readobj/thin-archive.test
  llvm/test/tools/llvm-size/archive.test
  llvm/test/tools/llvm-size/totals.test
  llvm/test/tools/llvm-tli-checker/multi-file.yaml
  llvm/tools/llvm-ar/llvm-ar.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D127864.437169.patch
Type: text/x-patch
Size: 38209 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220615/3cf662e6/attachment-0001.bin>


More information about the llvm-commits mailing list