1

Closed

make.matrix missing

description

It is mentioned in the README, but it is not there
Closed May 4, 2016 at 5:12 AM by parno

comments

ysangkok wrote Feb 27, 2016 at 1:55 PM

Sorry, it is in ccompiler/src

ysangkok wrote Feb 27, 2016 at 1:59 PM

But I am missing eqtest.c. Here is how I try to use vc:

wget "http://download-codeplex.sec.s-msft.com/Download/SourceControlFileDownload.ashx?ProjectName=vc&changeSetId=50564a8aa835fd3cccef428944979eba3681c7ef"
unzip Source*
cd pinocchio/ccompiler/external-code
make
cd ../input
PYTHONPATH=../../common python ../src/build-test-matrix.py

Then I get

gcc: error: eqtest.c: No such file or directory
gcc: fatal error: no input files
compilation terminated.

ysangkok wrote Feb 27, 2016 at 2:07 PM

If I adjust App.py to use floyd instead of eqtest, I get:

% make -f make.matrix
gcc -g -I../../common -Ibuild/ -c -o build/qsp-test-floyd-p0.o qsp-test.c -DPARAM=0
qsp-test.c: In function ‘qsp_outsource’:
qsp-test.c:226:3: warning: implicit declaration of function ‘outsource’ [-Wimplicit-function-declaration]
outsource(in, out);
^
qsp-test.c:230:3: warning: implicit declaration of function ‘outsource_reference’ [-Wimplicit-function-declaration]
outsource_reference(in, out);
^
qsp-test.c:235:45: warning: implicit declaration of function ‘test_name’ [-Wimplicit-function-declaration]
snprintf(ifn, sizeof(ifn), "build/%s.in", test_name());
                                         ^
qsp-test.c:235:30: warning: format ‘%s’ expects argument of type ‘char *’, but argument 4 has type ‘int’ [-Wformat=]
snprintf(ifn, sizeof(ifn), "build/%s.in", test_name());
                          ^
qsp-test.c:235:30: warning: format ‘%s’ expects argument of type ‘char *’, but argument 4 has type ‘int’ [-Wformat=]
qsp-test.c:238:30: warning: format ‘%s’ expects argument of type ‘char *’, but argument 4 has type ‘int’ [-Wformat=]
snprintf(ofn, sizeof(ofn), "build/%s.out", test_name());
                          ^
qsp-test.c:238:30: warning: format ‘%s’ expects argument of type ‘char *’, but argument 4 has type ‘int’ [-Wformat=]
qsp-test.c:255:41: warning: format ‘%s’ expects argument of type ‘char *’, but argument 4 has type ‘int’ [-Wformat=]
snprintf(basefile, sizeof(basefile), "build/%s-p%d-b%d", test_name(), PARAM, testmode.arith_bit_width);
                                     ^
qsp-test.c:255:41: warning: format ‘%s’ expects argument of type ‘char *’, but argument 4 has type ‘int’ [-Wformat=]
qsp-test.c:313:3: warning: implicit declaration of function ‘print_output’ [-Wimplicit-function-declaration]
print_output(resultbuf, sizeof(resultbuf), out);
^
qsp-test.c: In function ‘main’:
qsp-test.c:418:3: warning: implicit declaration of function ‘rand_core’ [-Wimplicit-function-declaration]
rand_core(testmode.iters);
^
qsp-test.c:426:25: warning: implicit declaration of function ‘test_core’ [-Wimplicit-function-declaration]
 result_experiment = test_core(iter);
                     ^
qsp-test.c: Assembler messages:
qsp-test.c:66: Error: operand type mismatch for push'
qsp-test.c:66: Error: operand type mismatch for
pop'
make.matrix:15: recipe for target 'build/qsp-test-floyd-p0.o' failed
make: *** [build/qsp-test-floyd-p0.o] Error 1

ysangkok wrote Feb 27, 2016 at 7:08 PM

It seems that compilation works if I use -m32. Is this broken on 64-bit machines per design?

parno wrote Mar 6, 2016 at 10:55 PM

Thanks for reporting the missing eqtest. I just pushed it to save future users from running into that problem. In general, Pinocchio should work on 64-bit machines. We did a lot of the tests with 32-bit Cygwin, which may explain why you're seeing the compilation problem but we didn't. The file qsp-test.c is what runs the native version of the program, so technically you don't need it if you just want to run verified computations.