Fix FTBFS on powerpc with recent binutils
authorSébastien Villemot <sebastien@debian.org>
Wed, 20 May 2020 14:42:23 +0000 (15:42 +0100)
committerSébastien Villemot <sebastien@debian.org>
Wed, 20 May 2020 14:42:23 +0000 (15:42 +0100)
commit4040315fd8216bfd14d873ccf04d90f0b89a0eaf
tree1961e23641c3b8adab8fb32693a21e19fef832b9
parentf028b3d26be5376431ee5897fc8052a9ffa40be0
Fix FTBFS on powerpc with recent binutils

Forwarded: no
Last-Update: 2015-11-23

A recent modification in binutils (see
https://sourceware.org/ml/binutils/2015-04/msg00332.html) introduced a change
in the way the ppc assembly instructions "dcbt" and "dcbtst" are handled.
When compiling on a generic ppc processor, the 3-arguments form of those
instructions is no longer accepted, and one must instead use a 2-arguments
form (ignoring the TH argument).

Incidentally, the binutils change also fixed a bug in the way those
instructions were handled. On a generic ppc processor, they used to be
interpreted in the so-called "embedded" form ("dcbt TH, RA, RB", only used on
some embedded machines), while they should have been interpreted in the
so-called "server" form ("dcbt RA, RB, TH"). The ATLAS assembly directive were
apparently written in "server" form, and were therefore mis-assemblied.

Ideally, this patch should be improved in order to use the TH argument on
machines that support it (only needed in atlas_prefetch.h; other instances use
the default zero value for TH).
Last-Update: 2015-11-23
Gbp-Pq: Name powerpc-dcbt.patch
include/atlas_prefetch.h
tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c
tune/blas/gemm/CASES/ATL_smm4x4x128_av.c