PR binutils/23013: Assembler not recognizing 3-opt dcbt instruction form on Power systems
Alan Modra
amodra@gmail.com
Fri Mar 30 03:14:00 GMT 2018
On Thu, Mar 29, 2018 at 09:40:27PM -0500, Peter Bergner wrote:
> On 3/29/18 8:29 PM, Alan Modra wrote:
> > On Thu, Mar 29, 2018 at 02:56:24PM -0500, Peter Bergner wrote:
> > Write the above line as
> >
> > ppc_cpu |= (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
>
> Hmmm.... or maybe the following is more readable?
Fine, but "|=" not "=", to preserve -many.
> diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
> index ff76221..a1a9000 100644
> --- a/gas/config/tc-ppc.c
> +++ b/gas/config/tc-ppc.c
> @@ -1403,7 +1403,11 @@ ppc_set_cpu (void)
> if ((ppc_cpu & ~(ppc_cpu_t) PPC_OPCODE_ANY) == 0)
> {
> if (ppc_obj64)
> - ppc_cpu |= PPC_OPCODE_PPC | PPC_OPCODE_64;
> + if (target_big_endian)
> + ppc_cpu |= PPC_OPCODE_PPC | PPC_OPCODE_64;
> + else
> + /* The minimum supported cpu for 64-bit little-endian is power8. */
> + ppc_cpu = ppc_parse_cpu (ppc_cpu, &sticky, "power8");
> else if (strncmp (default_os, "aix", 3) == 0
> && default_os[3] >= '4' && default_os[3] <= '9')
> ppc_cpu |= PPC_OPCODE_COMMON;
>
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list