- The scale factor must be 1, 2, 4, 8
- The displacement must fit in 32-bit signed integer
Noticed by: https://github.com/llvm/llvm-project/issues/55091
Differential D124455
[X86] Check the address in machine verifier skan on Apr 26 2022, 7:34 AM. Authored by
Details
Noticed by: https://github.com/llvm/llvm-project/issues/55091
Diff Detail
Event Timeline
Comment Actions Updated the test file
Comment Actions Check the scale only when index register is not none This change fixed three tests: LLVM :: CodeGen/X86/optimize-compare.mir LLVM :: CodeGen/X86/segmented-stacks-dynamic.ll LLVM :: CodeGen/X86/segmented-stacks.ll
Comment Actions Do we have test coverage that the expensive checks bot runs that would have caught the gather+opaque ptr issue that motivated this patch? I'm not opposed to this patch, just wondering if it is enough to help us find issues. Comment Actions I think so. https://github.com/llvm/llvm-project/blob/main/llvm/lib/CodeGen/TargetPassConfig.cpp#L809 Comment Actions If the bot has an expensive check for opaque ptr, then we will have the test converage. ( I'm not sure whether bot has such config) Comment Actions The reported issues didn't mention their origin, but I guess they are not from build bot since Nikita's patch merged for almost 20 days.
|
I'm curious why we can verify it without option -verify-machineinstrs?