And do you use that value?
As in
Code:
Pair result = augment_path(path, pair);
> where max is 10
Code:
typedef struct
{
int input_pair1[max][max];
int input_pair2[max][max];
}Pair;
Do you have any idea what sizeof(Pair) is?
Both your function arguments, and function return are passed "by value".
Which means you're copying back and forth 100's of bytes at a time.
Even more so, since you don't seem to use half of your pair structure.
> I am using CBMC-GC framework for converting functions to circuits.
I can see your code generating an awful lot of circuits.