Removing unneeded isCodeGenOnly from tls-specific instructions - TLS_ADD/TLS_LD/TLS_LDX/TLS_CALL.
Details
Diff Detail
Event Timeline
This deficiency of asm parser was mentioned during https://reviews.llvm.org/D35567 review.
Running this sparc-tls-relocations.s test as part of a pre-commit routine it got an assert:
] bin/llvm-mc test/MC/Sparc/sparc-tls-relocations.s -arch=sparc -show-encoding
llvm-mc: /home/fsergeev/work/llvm-upstream/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp:169: unsigned int (anonymous namespace)::SparcMCCodeEmitter::getCallTargetOpValue(const llvm::MCInst &, unsigned int, SmallVectorImpl<llvm::MCFixup> &, const llvm::MCSubtargetInfo &) const: Assertion `SExpr && SExpr->getSubExpr()->getKind() == MCExpr::SymbolRef && "Unexpected expression in TLS_CALL"' failed.
]
Needs to be investigated.
As per my latest comment there was an assert when I ran pre-integration testing.
I dont have any immediate plans to continue investigation on that, so if you can take it over from me - please, do.
Functionally this patch was heavily tested as part of our local clang-on-sparc-Solaris installation back at the time when I was part of Oracle Developer Studio project.
The assert does not trigger after https://reviews.llvm.org/rL334383. Is it ok to apply this patch? Just need to change the objdump output from Unknown to the symbol name.
Ok for me. Are you willing to take the ownership of this?
It will take some time for me to find a functional Sparc machine nowadays.