Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
- Fixed some more integer array operations.



git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@23734 f25d12d1-65f4-0310-ae8a-bbce733d8d8e
  • Loading branch information
Henning Kiel committed Dec 11, 2014
1 parent 9541f6e commit a23b8a8
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 29 deletions.
49 changes: 29 additions & 20 deletions SimulationRuntime/c/util/integer_array.c
Expand Up @@ -797,11 +797,13 @@ void add_integer_array(const integer_array_t * a, const integer_array_t * b, int
}
}

void add_alloc_integer_array(const integer_array_t * a, const integer_array_t * b,integer_array_t* dest)
integer_array_t add_alloc_integer_array(const integer_array_t a, const integer_array_t b)
{
clone_integer_array_spec(a,dest);
alloc_integer_array_data(dest);
add_integer_array(a,b,dest);
integer_array_t dest;
clone_integer_array_spec(&a,&dest);
alloc_integer_array_data(&dest);
add_integer_array(&a,&b,&dest);
return dest;
}

void sub_integer_array(const integer_array_t * a, const integer_array_t * b, integer_array_t* dest)
Expand Down Expand Up @@ -862,11 +864,13 @@ void mul_scalar_integer_array(modelica_integer a,const integer_array_t * b,integ
}
}

void mul_alloc_scalar_integer_array(modelica_integer a, const integer_array_t * b, integer_array_t* dest)
integer_array_t mul_alloc_scalar_integer_array(modelica_integer a, const integer_array_t b)
{
clone_integer_array_spec(b,dest);
alloc_integer_array_data(dest);
mul_scalar_integer_array(a,b,dest);
integer_array_t dest;
clone_integer_array_spec(&b,&dest);
alloc_integer_array_data(&dest);
mul_scalar_integer_array(a,&b,&dest);
return dest;
}

void mul_integer_array_scalar(const integer_array_t * a,modelica_integer b,integer_array_t* dest)
Expand All @@ -884,11 +888,13 @@ void mul_integer_array_scalar(const integer_array_t * a,modelica_integer b,integ
}
}

void mul_alloc_integer_array_scalar(const integer_array_t * a,modelica_integer b,integer_array_t* dest)
integer_array_t mul_alloc_integer_array_scalar(const integer_array_t a,modelica_integer b)
{
clone_integer_array_spec(a,dest);
alloc_integer_array_data(dest);
mul_integer_array_scalar(a,b,dest);
integer_array_t dest;
clone_integer_array_spec(&a,&dest);
alloc_integer_array_data(&dest);
mul_integer_array_scalar(&a,b,&dest);
return dest;
}


Expand Down Expand Up @@ -1024,11 +1030,13 @@ void div_integer_array_scalar(const integer_array_t * a,modelica_integer b,integ
}
}

void div_alloc_integer_array_scalar(const integer_array_t * a,modelica_integer b,integer_array_t* dest)
integer_array_t div_alloc_integer_array_scalar(const integer_array_t a,modelica_integer b)
{
clone_integer_array_spec(a,dest);
alloc_integer_array_data(dest);
div_integer_array_scalar(a,b,dest);
integer_array_t dest;
clone_integer_array_spec(&a,&dest);
alloc_integer_array_data(&dest);
div_integer_array_scalar(&a,b,&dest);
return dest;
}

void division_integer_array_scalar(threadData_t *threadData, const integer_array_t * a,modelica_integer b,integer_array_t* dest, const char* division_str)
Expand Down Expand Up @@ -1065,11 +1073,12 @@ void div_scalar_integer_array(modelica_integer a, const integer_array_t* b, inte
}
}

void div_alloc_scalar_integer_array(modelica_integer a, const integer_array_t* b, integer_array_t* dest)
integer_array_t div_alloc_scalar_integer_array(modelica_integer a, const integer_array_t b)
{
clone_integer_array_spec(b,dest);
alloc_integer_array_data(dest);
div_scalar_integer_array(a,b,dest);
integer_array_t dest;
clone_integer_array_spec(&b,d&est);
alloc_integer_array_data(&dest);
div_scalar_integer_array(a,&b,&dest);
}

void pow_integer_array_scalar(const integer_array_t *a, modelica_integer b, integer_array_t* dest)
Expand Down
14 changes: 5 additions & 9 deletions SimulationRuntime/c/util/integer_array.h
Expand Up @@ -173,8 +173,7 @@ extern void range_alloc_integer_array(modelica_integer start, modelica_integer s
extern void range_integer_array(modelica_integer start,modelica_integer stop,
modelica_integer inc,integer_array_t* dest);

extern void add_alloc_integer_array(const integer_array_t * a, const integer_array_t * b,
integer_array_t* dest);
extern integer_array_t add_alloc_integer_array(const integer_array_t a, const integer_array_t b);
extern void add_integer_array(const integer_array_t * a, const integer_array_t * b,
integer_array_t* dest);

Expand All @@ -186,13 +185,11 @@ extern void sub_integer_array_data_mem(const integer_array_t * a, const integer_

extern void mul_scalar_integer_array(modelica_integer a,const integer_array_t * b,
integer_array_t* dest);
extern void mul_alloc_scalar_integer_array(modelica_integer a,const integer_array_t * b,
integer_array_t* dest);
extern integer_array_t mul_alloc_scalar_integer_array(modelica_integer a,const integer_array_t b);

extern void mul_integer_array_scalar(const integer_array_t * a,modelica_integer b,
integer_array_t* dest);
extern void mul_alloc_integer_array_scalar(const integer_array_t * a,modelica_integer b,
integer_array_t* dest);
extern integer_array_t mul_alloc_integer_array_scalar(const integer_array_t a,modelica_integer b);

extern modelica_integer mul_integer_scalar_product(const integer_array_t a,
const integer_array_t b);
Expand All @@ -209,15 +206,14 @@ extern void mul_alloc_integer_matrix_product_smart(const integer_array_t * a,

extern void div_integer_array_scalar(const integer_array_t * a,modelica_integer b,
integer_array_t* dest);
extern void div_alloc_integer_array_scalar(const integer_array_t * a,modelica_integer b,
integer_array_t* dest);
extern integer_array_t div_alloc_integer_array_scalar(const integer_array_t a,modelica_integer b);

extern void division_integer_array_scalar(threadData_t*,const integer_array_t * a,modelica_integer b,
integer_array_t* dest, const char* division_str);
extern void division_alloc_integer_array_scalar(threadData_t*,const integer_array_t * a,modelica_integer b,
integer_array_t* dest, const char* division_str);
extern void div_scalar_integer_array(modelica_integer a, const integer_array_t* b, integer_array_t* dest);
extern void div_alloc_scalar_integer_array(modelica_integer a, const integer_array_t* b, integer_array_t* dest);
extern integer_array_t div_alloc_scalar_integer_array(modelica_integer a, const integer_array_t b);
extern void pow_integer_array_scalar(const integer_array_t *a, modelica_integer b, integer_array_t* dest);
extern void pow_alloc_integer_array_scalar(const integer_array* a, modelica_integer b, integer_array_t* dest);

Expand Down

0 comments on commit a23b8a8

Please sign in to comment.