On 17/01/14 15:55, Richard Earnshaw wrote:
On 16/01/14 14:43, Alex Velenko wrote:
On 14/01/14 15:51, pins...@gmail.com wrote:
On Jan 14, 2014, at 7:19 AM, Alex Velenko <alex.vele...@arm.com> wrote:
Hi,
This patch turns off the vec_perm patterns for aarch64_be, this should resolve
the issue highlighted here
http://gcc.gnu.org/ml/gcc-patches/2014-01/msg00321.html
With this patch applied, the test case provided in that link compiles without
an ICE.
However, the Big-Endian port is still in development. This patch exposes
another known but unrelated issue with Big-Endian Large-Int modes.
The patch has been tested on aarch64-none-elf and aarch64_be-none-elf resulting
in five
further regression due to the broken implementation of Big-Endian Large-Int
modes.
Kind regards,
Alex Velenko
gcc/
2014-01-14 Alex Velenko <alex.vele...@arm.com>
* config/aarch64/aarch64-simd.md (vec_perm<mode>): Add BE check.
* config/aarch64/aarch64.c (aarch64_expand_vec_perm): Add comment.
gcc/testsuite/
2014-01-14 Alex Velenko <alex.vele...@arm.com>
* lib/target-supports.exp
(check_effective_target_vect_perm): Exclude aarch64_be.
(check_effective_target_vect_perm_byte): Likewise.
(check_effective_target_vect_perm_short): Likewise.
I think you want to use a function to check if the target is effectively
big-endian instead. Internally at Cavium, our elf compiler has big-endian
multi-lib.
Thanks,
Andrew
<vec-perm.patch>
Hi,
Here is a vec-perm patch with changes proposed previously.
Little and Big-Endian tested with no additional issues appearing.
Kind regards,
Alex
gcc/
2014-01-16 Alex Velenko <alex.vele...@arm.com>
* config/aarch64/aarch64-simd.md (vec_perm<mode>): Add BE check.
* config/aarch64/aarch64.c (aarch64_expand_vec_perm): Add comment.
gcc/testsuite/
2014-01-16 Alex Velenko <alex.vele...@arm.com>
* lib/target-supports.exp
(check_effective_target_vect_perm): Exclude aarch64_be.
(check_effective_target_vect_perm_byte): Likewise.
(check_effective_target_vect_perm_short): Likewise.
The patch is missing the hunk for aarch64.c.
Hi,
It is a faulty changelog entry, not patch.
Should be:
gcc/
2014-01-16 Alex Velenko <alex.vele...@arm.com>
* config/aarch64/aarch64-simd.md (vec_perm<mode>): Add BE check.
gcc/testsuite/
2014-01-16 Alex Velenko <alex.vele...@arm.com>
* lib/target-supports.exp
(check_effective_target_vect_perm): Exclude aarch64_be.
(check_effective_target_vect_perm_byte): Likewise.
(check_effective_target_vect_perm_short): Likewise.