[all-commits] [llvm/llvm-project] a0ebac: [X86] Properly encode a 32-bit address with an ind...
topperc via All-commits
all-commits at lists.llvm.org
Mon Jul 27 21:17:21 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: a0ebac52df6d890fcba52e7db9ac66d0fc7c2582
https://github.com/llvm/llvm-project/commit/a0ebac52df6d890fcba52e7db9ac66d0fc7c2582
Author: Craig Topper <craig.topper at intel.com>
Date: 2020-07-27 (Mon, 27 Jul 2020)
Changed paths:
M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
M llvm/test/MC/X86/code16gcc.s
Log Message:
-----------
[X86] Properly encode a 32-bit address with an index register and no base register in 16-bit mode.
In 16-bit mode we can encode a 32-bit address using 0x67 prefix.
We were failing to do this when the index register was a 32-bit
register, the base register was not present, and the displacement
fit in 16-bits.
Fixes PR46866.
Commit: 25f193fb46dbdcc178946765aa929535199e2a4b
https://github.com/llvm/llvm-project/commit/25f193fb46dbdcc178946765aa929535199e2a4b
Author: Craig Topper <craig.topper at intel.com>
Date: 2020-07-27 (Mon, 27 Jul 2020)
Changed paths:
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/test/MC/X86/x86-16.s
M llvm/test/MC/X86/x86-32.s
Log Message:
-----------
[X86] Add support for {disp32} to control size of jmp and jcc instructions in the assembler
By default we pick a 1 byte displacement and let relaxation enlarge it if necessary. The GNU assembler supports a pseudo prefix to basically pre-relax the instruction the larger size.
I plan to add {disp8} and {disp32} support for memory operands in another patch which is why I've included the parsing code and enum for {disp8} pseudo prefix as well.
Reviewed By: echristo
Differential Revision: https://reviews.llvm.org/D84709
Commit: 647e861e080382593648b234668ad2f5a376ac5e
https://github.com/llvm/llvm-project/commit/647e861e080382593648b234668ad2f5a376ac5e
Author: Craig Topper <craig.topper at intel.com>
Date: 2020-07-27 (Mon, 27 Jul 2020)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
A llvm/test/CodeGen/X86/pr46827.ll
Log Message:
-----------
[X86] Detect if EFLAGs is live across XBEGIN pseudo instruction. Add it as livein to the basic blocks created when expanding the pseudo
XBEGIN causes several based blocks to be inserted. If flags are live across it we need to make eflags live in the new basic blocks to avoid machine verifier errors.
Fixes PR46827
Reviewed By: ivanbaev
Differential Revision: https://reviews.llvm.org/D84479
Compare: https://github.com/llvm/llvm-project/compare/a23f62343cb7...647e861e0803
More information about the All-commits
mailing list