Merge lp:~christophe-lyon/gcc-linaro/gcc-4.7-vec-permute-vext into lp:gcc-linaro/4.7
- gcc-4.7-vec-permute-vext
- Merge into 4.7
Status: | Superseded |
---|---|
Proposed branch: | lp:~christophe-lyon/gcc-linaro/gcc-4.7-vec-permute-vext |
Merge into: | lp:gcc-linaro/4.7 |
To merge this branch: | bzr merge lp:~christophe-lyon/gcc-linaro/gcc-4.7-vec-permute-vext |
Related bugs: | |
Related blueprints: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Matthew Gretton-Dann | Pending | ||
Ramana Radhakrishnan | Pending | ||
Review via email: mp+122671@code.launchpad.net |
This proposal supersedes a proposal from 2012-08-23.
This proposal has been superseded by a proposal from 2012-09-04.
Commit message
Description of the change
This branch implements constant vec permute operation for the vext instruction as described in the corresponding blueprint: https:/
The patch has been accepted/committed upstream, this is a backport to Linaro-4.7 branch.
Michael Hope (michaelh1) wrote : Posted in a previous version of this proposal | # |
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on x86_64-
The build results are available at:
http://
The testsuite results are the same as the branch point lp:gcc-linaro+bzr115010.1.2
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: x86_64-
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on i686-precise-
The build results are available at:
http://
The testsuite results are the same as the branch point lp:gcc-linaro+bzr115010.1.2
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: i686-precise-
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on armv7l-
The build results are available at:
http://
-PASS: gcc.dg/
-PASS: gcc.dg/
+FAIL: gcc.dg/
+FAIL: gcc.dg/
-PASS: gcc.dg/
-PASS: gcc.dg/
+FAIL: gcc.dg/
+FAIL: gcc.dg/
-PASS: gcc.dg/
-PASS: gcc.dg/
+FAIL: gcc.dg/
+FAIL: gcc.dg/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
-PASS: gcc.target/
-PASS: gcc.target/
-PASS: gcc.target/
+FAIL: gcc.target/
+FAIL: gcc.target/
+FAIL: gcc.target/
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: armv7l-
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on armv7l-
The build results are available at:
http://
-PASS: gcc.dg/
-PASS: gcc.dg/
+FAIL: gcc.dg/
+FAIL: gcc.dg/
-PASS: gcc.dg/
-PASS: gcc.dg/
+FAIL: gcc.dg/
+FAIL: gcc.dg/
-PASS: gcc.dg/
-PASS: gcc.dg/
+FAIL: gcc.dg/
+FAIL: gcc.dg/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
-PASS: gcc.target/
-PASS: gcc.target/
-PASS: gcc.target/
+FAIL: gcc.target/
+FAIL: gcc.target/
+FAIL: gcc.target/
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: armv7l-
Matthew Gretton-Dann (matthew-gretton-dann) wrote : Posted in a previous version of this proposal | # |
Can you look at the test changes please? The execution failures are
particularly worrying:
> +FAIL: gcc.dg/
> +FAIL: gcc.dg/
> +FAIL: gcc.dg/
> +FAIL: gcc.dg/
> +FAIL: gcc.dg/
> +FAIL: gcc.dg/
These failures are possibly okay - but can you check them please, and
either change the vrev test cases to make the test cases work, or fix
the problem with VEXT?
> +FAIL: gcc.target/
> +FAIL: gcc.target/
> +FAIL: gcc.target/
The patch has some GNU coding style issues. The script
contrib/
those.
There is one commented out section of code:
--- gcc/config/
+++ gcc/config/
@@ -25587,6 +25587,57 @@
return true;
}
+/* Recognize patterns for the VEXT insns. */
+
+static bool
+arm_evpc_neon_vext (struct expand_vec_perm_d *d)
+{
+ unsigned int i, nelt = d->nelt;
+ rtx (*gen)(rtx, rtx, rtx, rtx);
+ rtx offset;
+
+ int prev = d->perm[0];
+
+ /*
+ if (d->one_vector_p)
+ return false; */
Can this be removed?
Although if it is a one_vector form we could have a rotation case
where we could generate:
vext.32 q1, q0, q0, #1
or similar.
A follow-on patch to this one would be to update the appropriate
intrinsics in gcc/config/
the appropriate code, and then regenerate arm_neon.h.
Thanks,
Matt
Michael Hope (michaelh1) wrote : Posted in a previous version of this proposal | # |
cbuild has taken a snapshot of this branch at r115014 and queued it for build.
The diff against the ancestor r115010.1.2 is available at:
http://
and will be built on the following builders:
a9-builder a9hf-builder armv5-builder i686 x86_64
You can track the build queue at:
http://
cbuild-snapshot: gcc-linaro-
cbuild-ancestor: lp:gcc-linaro+bzr115010.1.2
cbuild-state: check
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on x86_64-
The build results are available at:
http://
The testsuite results are the same as the branch point lp:gcc-linaro+bzr115010.1.2
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: x86_64-
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on i686-precise-
The build results are available at:
http://
The testsuite results are the same as the branch point lp:gcc-linaro+bzr115010.1.2
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: i686-precise-
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on armv7l-
The build results are available at:
http://
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: armv7l-
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on armv7l-
The build results are available at:
http://
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: armv7l-
Linaro Toolchain Builder (cbuild) wrote : Posted in a previous version of this proposal | # |
cbuild successfully built this on armv7l-
The build results are available at:
http://
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
+PASS: gcc.target/
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: armv7l-
cbuild has taken a snapshot of this branch at r115012 and queued it for build.
The diff against the ancestor r115010.1.2 is available at: builds. linaro. org/toolchain/ snapshots/ gcc-linaro- 4.7+bzr115012~ christophe- lyon~gcc- 4.7-vec- permute- vext.diff
http://
and will be built on the following builders:
a9-builder a9hf-builder armv5-builder i686 x86_64
You can track the build queue at: ex.seabright. co.nz/helpers/ scheduler
http://
cbuild-snapshot: gcc-linaro- 4.7+bzr115012~ christophe- lyon~gcc- 4.7-vec- permute- vext
cbuild-ancestor: lp:gcc-linaro+bzr115010.1.2
cbuild-state: check