Changes

Summary

  1. [PowerPC] prepare more loop load/store instructions (details)
  2. [APInt] Add a concat method, use LLVM_UNLIKELY to help optimizer. (details)
  3. [yaml2obj][XCOFF] add the SectionIndex field for symbol. (details)
Commit 946e69d253f23d62ed56f8f969414bb07a655e4e by czhengsz
[PowerPC] prepare more loop load/store instructions

PPCLoopInstrFormPrep pass now can prepare for load store instructions
in a loop whose increment is not a constant integer.

Reviewed By: jsji

Differential Revision: https://reviews.llvm.org/D105872
The file was modifiedllvm/test/CodeGen/PowerPC/lsr-profitable-chain.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCLoopInstrFormPrep.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/loop-instr-prep-non-const-increasement.ll
Commit 8b4afc5aef148aff26047ca7bad4cdcf58c35e25 by clattner
[APInt] Add a concat method, use LLVM_UNLIKELY to help optimizer.

Three unrelated changes:

1) Add a concat method as a convenience to help write bitvector
   use cases in a nicer way.
2) Use LLVM_UNLIKELY as suggested by @xbolva00 in a previous patch.
3) Fix casing of some "slow" methods to follow naming standards.

Differential Revision: https://reviews.llvm.org/D109620
The file was modifiedllvm/lib/Support/APInt.cpp
The file was modifiedllvm/unittests/ADT/APIntTest.cpp
The file was modifiedllvm/include/llvm/ADT/APInt.h
Commit b98c3e957f564d1101c1fe1522686c7d0a9a9ddb by esme.yi
[yaml2obj][XCOFF] add the SectionIndex field for symbol.

Summary: Add the SectionIndex field for symbol.
1: a symbol can reference a section by SectionName or SectionIndex.
2: a symbol can reference a section by both SectionName and SectionIndex.
3: if both Section and SectionIndex are specified, but the two values refer
   to different sections, an error will be reported.
4: an invalid SectionIndex is allowed.
5: if a symbol references a non-existent section by SectionName, an error will be reported.

Reviewed By: jhenderson, Higuoxing

Differential Revision: https://reviews.llvm.org/D109566
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
The file was modifiedllvm/lib/ObjectYAML/XCOFFEmitter.cpp
The file was modifiedllvm/lib/ObjectYAML/XCOFFYAML.cpp
The file was modifiedllvm/include/llvm/ObjectYAML/XCOFFYAML.h
The file was addedllvm/test/tools/yaml2obj/XCOFF/symbol-section.yaml