<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 06/12/2015 07:12 PM, Daniel Sanders
      wrote:<br>
    </div>
    <blockquote class=" cite"
      id="mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org"
cite="mid:E484D272A3A61B4880CDF2E712E9279F459E9CAA@hhmail02.hh.imgtec.org"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <meta name="Generator" content="Microsoft Word 14 (filtered
        medium)">
      <style>#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org p.MsoNormal,
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org li.MsoNormal,
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org div.MsoNormal { margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: "Times New Roman","serif"; }
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org a:link,
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org span.MsoHyperlink { color: blue; text-decoration: underline; }
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org a:visited,
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org span.MsoHyperlinkFollowed { color: purple; text-decoration: underline; }
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org p.MsoListParagraph,
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org li.MsoListParagraph,
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org div.MsoListParagraph { margin: 0cm 0cm 0.0001pt 36pt; font-size: 12pt; font-family: "Times New Roman","serif"; }
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org span.EmailStyle17 { font-family: "Calibri","sans-serif"; color: windowtext; }
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org .MsoChpDefault { font-family: "Calibri","sans-serif"; }
#mid_E484D272A3A61B4880CDF2E712E9279F459E9CAA_hhmail02_hh_imgtec_org div.WordSection1 { page: WordSection1; }
</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">Hi,<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">I'm
            afraid targeting a 64-bit CPU and the O32 ABI is completely
            broken at the moment, it's one of the very long-standing
            issues I'm working towards. The main problem is that a lot
            of the internals of the Mips LLVM backend derive their
            behaviour from the target CPU rather than the target ABI. In
            theory, the combination of mips3 and O32 is valid and should
            generate code pretty much the same way as mips2 and O32
            does. In the current implementation, the fact that mips3 has
            64-bit GPR's tells a lot of the code generator to use 64-bit
            instructions and selects other behaviour that is correct for
            the N32/N64 ABI's but not for O32. For this (and many other)
            reasons, there's an assertion that O32 is not used on a
            64-bit CPU. <o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">Any
            patches that make progress on this will be warmly welcomed.
            In the meantime, the best I can suggest is to target mips2
            and O32. That combination will work and will do the same
            thing (aside from the precise ELF header flags) as mips3 and
            O32 would.<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
        <p class="MsoNormal">> How can I change the <b>fp=64</b> to
          <b>fp=32</b>? Have tried pass -mfp32 to
          mipsel-unknown-linux-gnu-clang++ but with no luck.<br>
          <br>
          <span
style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">In
            the current implementation, this is not possible.<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">This
            also raises a point I haven't considered yet. The Mips3
            architecture mandates that the FPU implementation is 64-bit,
            but if you're generating O32 code should we treat it as
            being a 32-bit FPU? I suspect we should since it matches the
            treatment of GPR's.<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">>
          </span>Yes I known it works if uses <b>-mips64</b> etc, but I
          need mips3.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">I'd be surprised if mips64 and O32 works.
          It's subject to the same problems as mips3 and O32.<span
style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
        <br>
      </div>
    </blockquote>
    <br>
    Hi,<br>
    <blockquote type="cite"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">the
        best I can suggest is to target mips2 and O32</span></blockquote>
    It's not work for all, still get Assembler messages error on some
    source files<br>
    <blockquote type="cite">Warning: float register should be even, was
      7</blockquote>
    <br>
    <blockquote type="cite">I'd be surprised if mips64 and O32 works.</blockquote>
    I mean compile the code only, since running the application with
    buggy GUI. <span class="moz-smiley-s2"><span> :-( </span></span><br>
    <br>
    <div class="moz-signature">-- <br>
      <i>Regards</i></div>
  </body>
</html>