<div dir="ltr">It is certainly helping - Thanks Renato.</div><div class="gmail_extra"><br><div class="gmail_quote">2015-07-06 18:39 GMT+03:00 Renato Golin <span dir="ltr"><<a href="mailto:renato.golin@linaro.org" target="_blank">renato.golin@linaro.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 6 July 2015 at 16:32, Eric Bentura <<a href="mailto:ebentura@gmail.com">ebentura@gmail.com</a>> wrote:<br>
> I tried to build the object file using clang 3.7 and it fails with the same<br>
> error.<br>
> Where should I look at in the ARM backend to understand what happens?<br>
> Where the jump table instruction is generated and supposed to be relaxed?<br>
<br>
</span>Have a look at lib/Target/ARM/ARMConstantIslandPass.cpp, especially<br>
where Tim's patch touches:<br>
<br>
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject-3Fview-3Drevision-26revision-3D238680&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=Mfk2qtn1LTDThVkh6-oGglNfMADXfJdty4_bhmuhMHA&m=L1FBuzHyHNRHr3dhbCmt6iVmGmD6e8j_EvMO4PSDLnI&s=hV72wuHuZ4xnp9zkTFQHep6HJzFpWSlam7-EqTKmFfI&e=" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?view=revision&revision=238680</a><br>
<br>
Instruction relaxation rules should be in the TableGen files, I think,<br>
but that means it could be in a number of places.<br>
<br>
Step through lib/Target/ARM/ARMAsmPrinter.cpp, at<br>
ARMAsmPrinter::EmitJumpTableInsts and see what the operand is.<br>
<br>
You'd expect that it would be already relaxed by that point. If it is,<br>
the bug is in the printer. If not, it could be in the instruction<br>
selection process, either ARMISelLowering or during validation, at<br>
ARMISelDAGToDAG.<br>
<br>
Hope that helps.<br>
<br>
cheers,<br>
--renato<br>
</blockquote></div><br></div>