updated gemv kernel for armv6

This commit is contained in:
Werner Saar
2016-01-24 16:31:19 +01:00
parent eaa63165df
commit ceaa931e48
3 changed files with 40 additions and 21 deletions
+23 -12
View File
@@ -59,6 +59,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define I r12
#define FP_ZERO [fp, #-228]
#define FP_ZERO_0 [fp, #-228]
#define FP_ZERO_1 [fp, #-224]
#define N [fp, #-252 ]
#define A [fp, #-256 ]
@@ -75,8 +79,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.macro INIT_F2
vsub.f64 d2 , d2 , d2
vsub.f64 d3 , d3 , d3
fldd d2, FP_ZERO
vmov.f64 d3 , d2
.endm
@@ -123,7 +127,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.macro INIT_F1
vsub.f64 d2 , d2 , d2
fldd d2, FP_ZERO
vmov.f64 d3 , d2
.endm
@@ -160,8 +165,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.macro INIT_S2
vsub.f64 d2 , d2 , d2
vsub.f64 d3 , d3 , d3
fldd d2, FP_ZERO
vmov.f64 d3 , d2
.endm
@@ -224,7 +229,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.macro INIT_S1
vsub.f64 d2 , d2 , d2
fldd d2, FP_ZERO
vmov.f64 d3 , d2
.endm
@@ -276,8 +282,9 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.macro INIT_F2
vsub.f32 s2 , s2 , s2
vsub.f32 s3 , s3 , s3
flds s2 , FP_ZERO
vmov.f32 s3 , s2
.endm
@@ -321,7 +328,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.macro INIT_F1
vsub.f32 s2 , s2 , s2
flds s2 , FP_ZERO
.endm
@@ -356,8 +363,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.macro INIT_S2
vsub.f32 s2 , s2 , s2
vsub.f32 s3 , s3 , s3
flds s2 , FP_ZERO
vmov.f32 s3 , s2
.endm
@@ -418,7 +425,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.macro INIT_S1
vsub.f32 s2 , s2 , s2
flds s2 , FP_ZERO
.endm
@@ -488,6 +495,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
vstm r12, { s8 - s15 } // store floating point registers
#endif
movs r12, #0
str r12, FP_ZERO
str r12, FP_ZERO_1
cmp M, #0
ble gemvt_kernel_L999