diff --git a/maca_trans_parser/src/simple_decoder_parser_arc_eager.c b/maca_trans_parser/src/simple_decoder_parser_arc_eager.c index 98d4111849c2a62366fbcb373673cc55df4cc1bc..e3a3dfbf61df10f4512f66a098455a0cb7bb47f4 100644 --- a/maca_trans_parser/src/simple_decoder_parser_arc_eager.c +++ b/maca_trans_parser/src/simple_decoder_parser_arc_eager.c @@ -14,6 +14,20 @@ #include"partial_parser_conditional.h" #include"confidence_score.h" +unsigned long mix(unsigned long a, unsigned long b, unsigned long c) +{ + a=a-b; a=a-c; a=a^(c >> 13); + b=b-c; b=b-a; b=b^(a << 8); + c=c-a; c=c-b; c=c^(b >> 13); + a=a-b; a=a-c; a=a^(c >> 12); + b=b-c; b=b-a; b=b^(a << 16); + c=c-a; c=c-b; c=c^(b >> 5); + a=a-b; a=a-c; a=a^(c >> 3); + b=b-c; b=b-a; b=b^(a << 10); + c=c-a; c=c-b; c=c^(b >> 15); + return c; +} + void print_word_buffer_old(config *c, dico *dico_labels, mcd *mcd_struct) { int i; @@ -159,7 +173,7 @@ void simple_decoder_parser_arc_eager(context *ctx) double ProbaDivider = 100; // TO SETUP double randomFloat; - srand(mix(clock(), time(NULL), getpid());); + srand(mix(clock(), time(NULL), getpid())); word* word_scored;