M4RIE 0.20111004
Loading...
Searching...
No Matches
trsm.h
Go to the documentation of this file.
1
8#ifndef TRSM_H
9#define TRSM_H
10
11/******************************************************************************
12*
13* M4RIE: Linear Algebra over GF(2^e)
14*
15* Copyright (C) 2011 Martin Albrecht <martinralbrecht@googlemail.com>
16*
17* Distributed under the terms of the GNU General Public License (GEL)
18* version 2 or higher.
19*
20* This code is distributed in the hope that it will be useful,
21* but WITHOUT ANY WARRANTY; without even the implied warranty of
22* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23* General Public License for more details.
24*
25* The full text of the GPL is available at:
26*
27* http://www.gnu.org/licenses/
28******************************************************************************/
29
30#include <m4rie/mzed.h>
31#include <m4rie/mzd_slice.h>
32
33#define MZED_TRSM_CUTOFF 512
45void _mzed_trsm_upper_left(const mzed_t *U, mzed_t *B, const rci_t cutoff);
46
57
67static inline void mzed_trsm_upper_left(const mzed_t *U, mzed_t *B) {
69}
70
81void _mzd_slice_trsm_upper_left(const mzd_slice_t *U, mzd_slice_t *B, const rci_t cutoff);
82
93
106
117void _mzed_trsm_lower_left(const mzed_t *L, mzed_t *B, const rci_t cutoff);
118
128void mzed_trsm_lower_left_naive(const mzed_t *L, mzed_t *B);
129
139static inline void mzed_trsm_lower_left(const mzed_t *L, mzed_t *B) {
141}
142
153void _mzd_slice_trsm_lower_left(const mzd_slice_t *L, mzd_slice_t *B, const rci_t cutoff);
154
165
178
179
180
181
182#endif //TRSM_H
static void mzd_slice_trsm_lower_left(const mzd_slice_t *L, mzd_slice_t *B)
Definition trsm.h:175
void _mzed_trsm_lower_left(const mzed_t *L, mzed_t *B, const rci_t cutoff)
void mzed_trsm_lower_left_naive(const mzed_t *L, mzed_t *B)
Definition trsm.c:19
void _mzed_trsm_upper_left(const mzed_t *U, mzed_t *B, const rci_t cutoff)
static void mzed_trsm_upper_left(const mzed_t *U, mzed_t *B)
Definition trsm.h:67
void mzed_trsm_upper_left_naive(const mzed_t *U, mzed_t *B)
Definition trsm.c:5
static void mzd_slice_trsm_upper_left(const mzd_slice_t *U, mzd_slice_t *B)
Definition trsm.h:103
void _mzd_slice_trsm_upper_left(const mzd_slice_t *U, mzd_slice_t *B, const rci_t cutoff)
void mzd_slice_trsm_lower_left_naive(const mzd_slice_t *L, mzd_slice_t *B)
Definition trsm.c:47
void mzd_slice_trsm_upper_left_naive(const mzd_slice_t *U, mzd_slice_t *B)
Definition trsm.c:33
static void mzed_trsm_lower_left(const mzed_t *L, mzed_t *B)
Definition trsm.h:139
void _mzd_slice_trsm_lower_left(const mzd_slice_t *L, mzd_slice_t *B, const rci_t cutoff)
Matrices using a bitsliced representation.
Dense matrices over represented as packed matrices.
Dense matrices over represented as slices of matrices over .
Definition mzd_slice.h:56
Dense matrices over represented as packed matrices.
Definition mzed.h:59
#define MZED_TRSM_CUTOFF
Definition trsm.h:33