This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch][Gold] BE8 for ARM


Thank you Cary for the comments and updated the patch .

~Umesh

On Thu, Sep 21, 2017 at 4:00 AM, Cary Coutant <ccoutant@gmail.com> wrote:
>>> Arm/thumb stubs support was missed in the be8 mode with the previous
>>> patch, hence adding the same with the unit cases.
>>>
>>> No Regress on gold test-suites.
>
> +      if (enable_be8)
> +           elfcpp::Swap<16, false>::writeval(pov, insns[i].data() & 0xffff);
> +      else
> +        elfcpp::Swap<16, big_endian>::writeval(pov, insns[i].data() & 0xffff);
>
> These lines are not indented correctly.
>
> +      if (enable_be8)
> +           elfcpp::Swap<16, false>::writeval(
> +               pov,this->thumb16_special(i));
> +      else
> +        elfcpp::Swap<16, big_endian>::writeval(
> +            pov,this->thumb16_special(i));
>
> Same here.
>
> +        if (enable_be8) {
> +             elfcpp::Swap<16, false>::writeval(pov, hi);
> +             elfcpp::Swap<16, false>::writeval(pov + 2, lo);
> +        }
> +        else {
> +          elfcpp::Swap<16, big_endian>::writeval(pov, hi);
> +          elfcpp::Swap<16, big_endian>::writeval(pov + 2, lo);
> +        }
>           }
>           break;
>         case Insn_template::ARM_TYPE:
> +      if (enable_be8)
> +        elfcpp::Swap<32, false>::writeval(pov, insns[i].data());
> +      else
> +        elfcpp::Swap<32, big_endian>::writeval(pov, insns[i].data());
> +      break;
>
> And here.
>
> I think this comment from Stub::do_fixed_endian_write() can be removed:
>
>   // FIXME:  We do not handle BE8 encoding yet.
>
> diff --git a/gold/testsuite/arm_farcall_arm_arm_be8.sh
> b/gold/testsuite/arm_farcall_arm_arm_be8.sh
> new file mode 100644
> index 0000000..e21a16d
> --- /dev/null
> +++ b/gold/testsuite/arm_farcall_arm_arm_be8.sh
>
> The new shell script files should be executable. Please make sure
> they're marked that way in your git repo.
>
> -cary

Attachment: be8_stubs_support.patch
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]