constify ge_precomp

the tables in precomp_data.h can be const, since they are never written to.
Only one argument, to cmov(), needs to be constified to support this.

This moves 30 kbyte from .data to .text; for my arm-none-eabi target,

% arm-none-eabi-size ge.o.before
   text    data     bss     dec     hex filename
   2772   31680       0   34452    8694 ge.o
% arm-none-eabi-size ge.o
   text    data     bss     dec     hex filename
  34452       0       0   34452    8694 ge.o
This commit is contained in:
Andy Isaacson 2017-02-09 17:33:00 -08:00
parent e65e7f944d
commit 923d2b4abc
2 changed files with 3 additions and 3 deletions

View File

@ -346,7 +346,7 @@ static unsigned char negative(signed char b) {
return (unsigned char) x;
}
static void cmov(ge_precomp *t, ge_precomp *u, unsigned char b) {
static void cmov(ge_precomp *t, const ge_precomp *u, unsigned char b) {
fe_cmov(t->yplusx, u->yplusx, b);
fe_cmov(t->yminusx, u->yminusx, b);
fe_cmov(t->xy2d, u->xy2d, b);

View File

@ -1,4 +1,4 @@
static ge_precomp Bi[8] = {
static const ge_precomp Bi[8] = {
{
{ 25967493, -14356035, 29566456, 3660896, -12694345, 4014787, 27544626, -11754271, -6079156, 2047605 },
{ -12545711, 934262, -2722910, 3049990, -727428, 9406986, 12720692, 5043384, 19500929, -15469378 },
@ -43,7 +43,7 @@ static ge_precomp Bi[8] = {
/* base[i][j] = (j+1)*256^i*B */
static ge_precomp base[32][8] = {
static const ge_precomp base[32][8] = {
{
{
{ 25967493, -14356035, 29566456, 3660896, -12694345, 4014787, 27544626, -11754271, -6079156, 2047605 },