diff options
author | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2019-03-24 19:18:01 +0100 |
---|---|---|
committer | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2019-03-24 19:19:53 +0100 |
commit | 03593590022b41b38ff1a02168d1f5ab3d6457b9 (patch) | |
tree | 5b83654ac11029814c63c1db0c4ce6f5fb880c76 /test/monniaux/bitsliced-aes/bs.c | |
parent | cc65063de9adb38f9e3d5ccc8a85135ae269124b (diff) | |
download | compcert-kvx-03593590022b41b38ff1a02168d1f5ab3d6457b9.tar.gz compcert-kvx-03593590022b41b38ff1a02168d1f5ab3d6457b9.zip |
experiments with ternary
Diffstat (limited to 'test/monniaux/bitsliced-aes/bs.c')
-rw-r--r-- | test/monniaux/bitsliced-aes/bs.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/test/monniaux/bitsliced-aes/bs.c b/test/monniaux/bitsliced-aes/bs.c index df5c1f6b..04c155ea 100644 --- a/test/monniaux/bitsliced-aes/bs.c +++ b/test/monniaux/bitsliced-aes/bs.c @@ -388,11 +388,14 @@ void bs_transpose_dst(word_t * transpose, word_t * blocks) int offset = i << MUL_SHIFT; #ifndef UNROLL_TRANSPOSE + /* DM experiments */ +#define TERNARY_XY0(t, x) (((t) != 0) ? (x) : (0)) + int j; for(j=0; j < WORD_SIZE; j++) { // TODO make const time - transpose[offset + j] |= (w & (ONE << j)) ? bitpos : 0; + transpose[offset + j] |= TERNARY_XY0(w & (ONE << j), bitpos); } #else |