X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=matrix.h;h=a9d26a05832820e2554a5c03a4a4c3ae543b084c;hb=1e55edf5bc39624d95f8b16ab13084cbe37b7f35;hp=d4337736f57003358bc73272f7aaced3e73393c8;hpb=724875e6dd0a014986b5b279266e40e0187aba2a;p=libfirm diff --git a/matrix.h b/matrix.h index d4337736f..a9d26a058 100644 --- a/matrix.h +++ b/matrix.h @@ -8,9 +8,21 @@ pbqp_matrix *pbqp_matrix_alloc(pbqp *pbqp, unsigned rows, unsigned cols); /* Copy the given matrix. */ pbqp_matrix *pbqp_matrix_copy(pbqp *pbqp, pbqp_matrix *m); +pbqp_matrix *pbqp_matrix_copy_and_transpose(pbqp *pbqp, pbqp_matrix *m); + /* sum += summand */ void pbqp_matrix_add(pbqp_matrix *sum, pbqp_matrix *summand); void pbqp_matrix_set(pbqp_matrix *mat, unsigned row, unsigned col, num value); +num pbqp_matrix_get_col_min(pbqp_matrix *matrix, unsigned col_index, vector *flags); +num pbqp_matrix_get_row_min(pbqp_matrix *matrix, unsigned row_index, vector *flags); + +void pbqp_matrix_sub_col_value(pbqp_matrix *matrix, unsigned col_index, + vector *flags, num value); +void pbqp_matrix_sub_row_value(pbqp_matrix *matrix, unsigned row_index, + vector *flags, num value); + +int pbqp_matrix_is_zero(pbqp_matrix *mat, vector *src_vec, vector *tgt_vec); + #endif /* KAPS_MATRIX_H */