diff options
Diffstat (limited to 'tests/fuzzing/bc_inputs1')
28 files changed, 923 insertions, 0 deletions
diff --git a/tests/fuzzing/bc_inputs1/abs.txt b/tests/fuzzing/bc_inputs1/abs.txt new file mode 100644 index 000000000000..ffb7aba65c3b --- /dev/null +++ b/tests/fuzzing/bc_inputs1/abs.txt @@ -0,0 +1,7 @@ +abs(0) +abs(1) +abs(.289365) +abs(289.82937658) +abs(-19) +abs(-.2098180) +abs(-198289.1098376) diff --git a/tests/fuzzing/bc_inputs1/add.txt b/tests/fuzzing/bc_inputs1/add.txt new file mode 100644 index 000000000000..647781732c63 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/add.txt @@ -0,0 +1,146 @@ +0 + 0 +0 + 1 +1 + 1 +1 + 0 +2 + 5 +237 + 483 +999 + 999 +2374623 + 324869356734856 +2378639084586723980562 + 23468729367839 +37298367203972395108367910823465293084561329084561390845613409516734503870691837451 + 785621394067928346918023476190834672198467134908618723249671349062187346898241093486139046139084613490817356023871869102746182749061872609129847 +1.1 + 0 +0 + 1.1 +457283.731284923576 + 37842934672834.3874629385672354 +1.0 + 0.1 +3746289134067138046 + 0.138375863945672398456712389456273486293 +-1 + -1 +-4 + -15 +-1346782 + -1287904651762468913476 +99999999999999999999999999999999999999999999999999999999999.999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +99999999999999999999999999999999999999999999999999999999999.999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999995 + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005 +99999999999999999999999999999999999999999999999999999999999.999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 + 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +99999999999999999999999999999999999999999999999999999999999.999999999999999999999999999999999999999999999999999999999899999999999999999999999999999999999999999999999999999999999999 + 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +99999999999999999999999999999999999989999999999999999999999.999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 + 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +-1889985797 + 2012747315 +0 + -14338.391079082 +-2422297 + 1.3134942556 +182039471029834 + 282039471029834 +282039471029834 + 182039471029834 +182039471029834.2801722893 + 282039471029834 +282039471029834.2801722893 + 182039471029834 +182039471029834.2801722893 + 282039471029834.2838 +282039471029834.2801722893 + 182039471029834.2838 +182039471029834 + 282039471029834.2801722893 +282039471029834 + 182039471029834.2801722893 +182039471029834.8297282893 + 282039471029834.2801722893 +282039471029834.8297282893 + 182039471029834.2801722893 +471029834 + 282039471029834 +471029834 + 182039471029834 +471029834.2801722893 + 282039471029834 +471029834.2801722893 + 182039471029834 +471029834.2801722893 + 282039471029834.2838 +471029834.2801722893 + 182039471029834.2838 +471029834 + 282039471029834.2801722893 +471029834 + 182039471029834.2801722893 +471029834.8297282893 + 282039471029834.2801722893 +471029834.8297282893 + 182039471029834.2801722893 +182039471029834 + 471029834 +282039471029834 + 471029834 +182039471029834.2801722893 + 471029834 +282039471029834.2801722893 + 471029834 +182039471029834.2801722893 + 471029834.2838 +282039471029834.2801722893 + 471029834.2838 +182039471029834 + 471029834.2801722893 +282039471029834 + 471029834.2801722893 +182039471029834.8297282893 + 471029834.2801722893 +282039471029834.8297282893 + 471029834.2801722893 +-182039471029834 + 282039471029834 +-282039471029834 + 182039471029834 +-182039471029834.2801722893 + 282039471029834 +-282039471029834.2801722893 + 182039471029834 +-182039471029834.2801722893 + 282039471029834.2838 +-282039471029834.2801722893 + 182039471029834.2838 +-182039471029834 + 282039471029834.2801722893 +-282039471029834 + 182039471029834.2801722893 +-182039471029834.8297282893 + 282039471029834.2801722893 +-282039471029834.8297282893 + 182039471029834.2801722893 +-471029834 + 282039471029834 +-471029834 + 182039471029834 +-471029834.2801722893 + 282039471029834 +-471029834.2801722893 + 182039471029834 +-471029834.2801722893 + 282039471029834.2838 +-471029834.2801722893 + 182039471029834.2838 +-471029834 + 282039471029834.2801722893 +-471029834 + 182039471029834.2801722893 +-471029834.8297282893 + 282039471029834.2801722893 +-471029834.8297282893 + 182039471029834.2801722893 +-182039471029834 + 471029834 +-282039471029834 + 471029834 +-182039471029834.2801722893 + 471029834 +-282039471029834.2801722893 + 471029834 +-182039471029834.2801722893 + 471029834.2838 +-282039471029834.2801722893 + 471029834.2838 +-182039471029834 + 471029834.2801722893 +-282039471029834 + 471029834.2801722893 +-182039471029834.8297282893 + 471029834.2801722893 +-282039471029834.8297282893 + 471029834.2801722893 +182039471029834 + -282039471029834 +282039471029834 + -182039471029834 +182039471029834.2801722893 + -282039471029834 +282039471029834.2801722893 + -182039471029834 +182039471029834.2801722893 + -282039471029834.2838 +282039471029834.2801722893 + -182039471029834.2838 +182039471029834 + -282039471029834.2801722893 +282039471029834 + -182039471029834.2801722893 +182039471029834.8297282893 + -282039471029834.2801722893 +282039471029834.8297282893 + -182039471029834.2801722893 +471029834 + -282039471029834 +471029834 + -182039471029834 +471029834.2801722893 + -282039471029834 +471029834.2801722893 + -182039471029834 +471029834.2801722893 + -282039471029834.2838 +471029834.2801722893 + -182039471029834.2838 +471029834 + -282039471029834.2801722893 +471029834 + -182039471029834.2801722893 +471029834.8297282893 + -282039471029834.2801722893 +471029834.8297282893 + -182039471029834.2801722893 +182039471029834 + -471029834 +282039471029834 + -471029834 +182039471029834.2801722893 + -471029834 +282039471029834.2801722893 + -471029834 +182039471029834.2801722893 + -471029834.2838 +282039471029834.2801722893 + -471029834.2838 +182039471029834 + -471029834.2801722893 +282039471029834 + -471029834.2801722893 +182039471029834.8297282893 + -471029834.2801722893 +282039471029834.8297282893 + -471029834.2801722893 +-182039471029834 + -282039471029834 +-282039471029834 + -182039471029834 +-182039471029834.2801722893 + -282039471029834 +-282039471029834.2801722893 + -182039471029834 +-182039471029834.2801722893 + -282039471029834.2838 +-282039471029834.2801722893 + -182039471029834.2838 +-182039471029834 + -282039471029834.2801722893 +-282039471029834 + -182039471029834.2801722893 +-182039471029834.8297282893 + -282039471029834.2801722893 +-282039471029834.8297282893 + -182039471029834.2801722893 +-471029834 + -282039471029834 +-471029834 + -182039471029834 +-471029834.2801722893 + -282039471029834 +-471029834.2801722893 + -182039471029834 +-471029834.2801722893 + -282039471029834.2838 +-471029834.2801722893 + -182039471029834.2838 +-471029834 + -282039471029834.2801722893 +-471029834 + -182039471029834.2801722893 +-471029834.8297282893 + -282039471029834.2801722893 +-471029834.8297282893 + -182039471029834.2801722893 +-182039471029834 + -471029834 +-282039471029834 + -471029834 +-182039471029834.2801722893 + -471029834 +-282039471029834.2801722893 + -471029834 +-182039471029834.2801722893 + -471029834.2838 +-282039471029834.2801722893 + -471029834.2838 +-182039471029834 + -471029834.2801722893 +-282039471029834 + -471029834.2801722893 +-182039471029834.8297282893 + -471029834.2801722893 +-282039471029834.8297282893 + -471029834.2801722893 diff --git a/tests/fuzzing/bc_inputs1/arctangent.txt b/tests/fuzzing/bc_inputs1/arctangent.txt new file mode 100644 index 000000000000..f665ea90b728 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/arctangent.txt @@ -0,0 +1,26 @@ +a(.267) +a(1) +scale = 64 +a(.267) +a(1) +scale = 100 +a(.267) +a(1) +scale = 20 +a(0) +a(.5) +a(0.577350269189625764509148780501) +a(1.5) +a(1.7320508075688772935274463415) +a(2) +a(3) +a(1000) +a(-.5) +a(-0.577350269189625764509148780501) +a(-1.5) +a(-1.7320508075688772935274463415) +a(-2) +a(-3) +a(-1000) +a(-3249917614.2821897119) +a(-694706362.1974670468) diff --git a/tests/fuzzing/bc_inputs1/array.bc b/tests/fuzzing/bc_inputs1/array.bc new file mode 100755 index 000000000000..dac232804914 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/array.bc @@ -0,0 +1,60 @@ +#! /usr/bin/bc -q + +define z(a[]) { + for (i = 0; i < l; ++i) { + a[i] + } +} + +define x(a[]) { + + # Test for separate vars and arrays. + auto a + + for (a = 0; a < l; ++a) { + a[a] = -a + } + + z(a[]) +} + +define g(x[], y[]) { + return x[0] - y[0] +} + +define h(y[], x[]) { + return g(x[], y[]) +} + +define m(*x[], *y[]) { + return x[0] / y[0] +} + +define n(*y[], *x[]) { + return m(x[], y[]) +} + +for (i = 0; i < 101; ++i) { + a[i] = i +} + +a[104] = 204 + +l = length(a[]) + +for (i = 0; i <= l; ++i) { + a[i] +} + +z(a[]) +x(a[]) +z(a[]) +l + +x[0] = 5 +y[0] = 4 + +h(x[], y[]) +n(x[], y[]) + +halt diff --git a/tests/fuzzing/bc_inputs1/arrays.txt b/tests/fuzzing/bc_inputs1/arrays.txt new file mode 100644 index 000000000000..26a284b8d814 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/arrays.txt @@ -0,0 +1,10 @@ +a[0] = 1 +a[2-1] = 2 + +a[0]+a[0] + +a[2-1]+a[2-1] + +a[5] = 2 +a[5.789] + diff --git a/tests/fuzzing/bc_inputs1/assignments.txt b/tests/fuzzing/bc_inputs1/assignments.txt new file mode 100644 index 000000000000..6a776e7840ec --- /dev/null +++ b/tests/fuzzing/bc_inputs1/assignments.txt @@ -0,0 +1,122 @@ +define x(x) { + return (i++ + x) +} +define y(x) { + return (++i + x) +} +define z(x) { + return (i *= 2) + x +} + +i++ +i-- +++i +--i + +(i++) +(i--) +(++i) +(--i) + +i += 1 +i +i -= -4 +i +i *= 5 +i +i /= 12.5 +i + +i = 0 + +(i += 1) +(i -= -4) +(i *= 5) +(i /= 12.5) + +i = 0 + +a[i++] += ++i +i-- +i-- +i +a[i] + +a[i]++ +a[i]-- +++a[i] +--a[i] + +i += 4 +i + +sqrt(i *= 4) +i +length(i /= 2) +i + +i = 4 +scale(i /= 2) +i + +i = -1 + +abs(i--) +abs(--i) +abs(++i) +abs(i++) + +i = -i + +a = 4 + +x(a) +i + +x(a *= 5) +a +i + +a = 4 + +y(a) +i + +y(a -= 2) +a +i + +a = 4 + +z(a) +i + +z(a /= 0.5) +a +i + +i = 1 + +if (i -= 1) print "true\n" +else print "false\n" + +if (i += 1) print "true\n" +else print "false\n" + +i = 3 + +while (i -= 2) print "i: ", i += 1, "\n" + +a = 5 + +for (i = 5; i-= 1; --a) print "i: ", i, "; a: ", a, "\n" + +define void t(x, y) { + print "x: ", x, "; y: ", y, "\n" +} + +t(i++, i++) +i + +t(++i, ++i) +i diff --git a/tests/fuzzing/bc_inputs1/basic.txt b/tests/fuzzing/bc_inputs1/basic.txt new file mode 100644 index 000000000000..f3d957a26635 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/basic.txt @@ -0,0 +1,7 @@ +scale=10;123981239.981273987 * 12983791827398.29836472638 +scale=100;759634576394.3946587934658364895 / 9834759834895386.36459364958346 +34895734986539489834759837489573498573.398475984759837485734987598345 + 9823749832749872384234872934.28347982374987239847982374 +a=123123123.987239874; b=123123123.239479823748; a+b +20347023.23498723984 - 28934723874.234720384 +scale=100;a=739534985.895347284957;b=238746782364.2374623784; c = a / b; c+0 + diff --git a/tests/fuzzing/bc_inputs1/boolean.txt b/tests/fuzzing/bc_inputs1/boolean.txt new file mode 100644 index 000000000000..e26ded34bd1d --- /dev/null +++ b/tests/fuzzing/bc_inputs1/boolean.txt @@ -0,0 +1,184 @@ +!0 +!1 +!(-129) +4 && 5 +4 && 0 +0 && 5 +4 && 5 && 7 +4 && 0 && 7 +0 && 5 && 7 +4 && 5 && 0 +0 && 0 && 7 +4 && 0 && 0 +0 && 5 && 0 +!4 && 5 +!4 && 0 +!0 && 5 +4 && !5 +4 && !0 +0 && !5 +!4 && 5 && 7 +!4 && 0 && 7 +!0 && 5 && 7 +!4 && 5 && 0 +!0 && 0 && 7 +!4 && 0 && 0 +!0 && 5 && 0 +4 && !5 && 7 +4 && !0 && 7 +0 && !5 && 7 +4 && !5 && 0 +0 && !0 && 7 +4 && !0 && 0 +0 && !5 && 0 +4 && 5 && !7 +4 && 0 && !7 +0 && 5 && !7 +4 && 5 && !0 +0 && 0 && !7 +4 && 0 && !0 +0 && 5 && !0 +!4 && !5 && 7 +!4 && !0 && 7 +!0 && !5 && 7 +!4 && !5 && 0 +!0 && !0 && 7 +!4 && !0 && 0 +!0 && !5 && 0 +!4 && 5 && !7 +!4 && 0 && !7 +!0 && 5 && !7 +!4 && 5 && !0 +!0 && 0 && !7 +!4 && 0 && !0 +!0 && 5 && !0 +4 && !5 && !7 +4 && !0 && !7 +0 && !5 && !7 +4 && !5 && !0 +0 && !0 && !7 +4 && !0 && !0 +0 && !5 && !0 +!4 && !5 && !7 +!4 && !0 && !7 +!0 && !5 && !7 +!4 && !5 && !0 +!0 && !0 && !7 +!4 && !0 && !0 +!0 && !5 && !0 +3 < 4 && 7 +3 && 4 >= 4 +3 > 4 && 7 +3 && 4 >= 5 +3 < 4 && 0 +0 && 4 >= 4 +3 > 4 && 0 +0 && 4 >= 5 +3 > 4 && 0 +0 && 4 < 4 +3 >= 4 && 0 +0 && 4 >= 5 +3 < 4 && 7 +3 && 4 >= 4 +3 > 4 && 7 > 4 +3 >= 2 && 4 >= 5 +3 < 4 && 0 > -1 +4 < 3 && 4 >= 4 +3 > 4 && 3 == 3 +3 != 3 && 4 >= 5 +3 > 4 && 0 > 1 +0 >= 0 && 4 < 4 +3 >= 4 && 0 >= 1 +0 <= -1 && 4 >= 5 +4 || 5 +4 || 0 +0 || 5 +4 || 5 || 7 +4 || 0 || 7 +0 || 5 || 7 +4 || 5 || 0 +0 || 0 || 7 +4 || 0 || 0 +0 || 5 || 0 +!4 || 5 +!4 || 0 +!0 || 5 +4 || !5 +4 || !0 +0 || !5 +!4 || 5 || 7 +!4 || 0 || 7 +!0 || 5 || 7 +!4 || 5 || 0 +!0 || 0 || 7 +!4 || 0 || 0 +!0 || 5 || 0 +4 || !5 || 7 +4 || !0 || 7 +0 || !5 || 7 +4 || !5 || 0 +0 || !0 || 7 +4 || !0 || 0 +0 || !5 || 0 +4 || 5 || !7 +4 || 0 || !7 +0 || 5 || !7 +4 || 5 || !0 +0 || 0 || !7 +4 || 0 || !0 +0 || 5 || !0 +!4 || !5 || 7 +!4 || !0 || 7 +!0 || !5 || 7 +!4 || !5 || 0 +!0 || !0 || 7 +!4 || !0 || 0 +!0 || !5 || 0 +!4 || 5 || !7 +!4 || 0 || !7 +!0 || 5 || !7 +!4 || 5 || !0 +!0 || 0 || !7 +!4 || 0 || !0 +!0 || 5 || !0 +4 || !5 || !7 +4 || !0 || !7 +0 || !5 || !7 +4 || !5 || !0 +0 || !0 || !7 +4 || !0 || !0 +0 || !5 || !0 +!4 || !5 || !7 +!4 || !0 || !7 +!0 || !5 || !7 +!4 || !5 || !0 +!0 || !0 || !7 +!4 || !0 || !0 +!0 || !5 || !0 +3 < 4 || 7 +3 || 4 >= 4 +3 > 4 || 7 +3 || 4 >= 5 +3 < 4 || 0 +0 || 4 >= 4 +3 > 4 || 0 +0 || 4 >= 5 +3 > 4 || 0 +0 || 4 < 4 +3 >= 4 || 0 +0 || 4 >= 5 +3 < 4 || 7 +3 || 4 >= 4 +3 > 4 || 7 > 4 +3 >= 2 || 4 >= 5 +3 < 4 || 0 > -1 +4 < 3 || 4 >= 4 +3 > 4 || 3 == 3 +3 != 3 || 4 >= 5 +3 > 4 || 0 > 1 +0 >= 0 || 4 < 4 +3 >= 4 || 0 >= 1 +0 <= -1 || 4 >= 5 +1 <= 0 && 1 <= 2 || 1 >= 0 && 1 == 2 +1 <= 0 && 1 <= 2 || 1 >= 0 && 1 != 2 +1 >= 0 && 1 <= 2 || 1 >= 0 && 1 == 2 diff --git a/tests/fuzzing/bc_inputs1/cosine.txt b/tests/fuzzing/bc_inputs1/cosine.txt new file mode 100644 index 000000000000..9e67df4c6f69 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/cosine.txt @@ -0,0 +1,44 @@ +scale = 25 +p = 4 * a(1) +scale = 20 +c(0) +c(0.5) +c(1) +c(2) +c(3) +c(-0.5) +c(-1) +c(-2) +c(-3) +c(p / 7) +c(-p / 7) +c(p / 4) +c(-p / 4) +c(p / 3) +c(-p / 3) +c(p / 2) +c(-p / 2) +c(3 * p / 4) +c(3 * -p / 4) +c(p) +c(-p) +c(3 * p / 2) +c(3 * -p / 2) +c(7 * p / 4) +c(7 * -p / 4) +c(13 * p / 4) +c(13 * -p / 4) +c(2 * p) +c(2 * -p) +c(131231) +c(-131231) +c(859799894.3562378245) +c(859799894.3562378245) +c(4307371) +c(3522556.3323810191) +c(44961070) +c(6918619.1574479809) +c(190836996.2180244164) +c(34934) +c(2483599) +c(13720376) diff --git a/tests/fuzzing/bc_inputs1/decimal.txt b/tests/fuzzing/bc_inputs1/decimal.txt new file mode 100644 index 000000000000..5c6bd327c1a8 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/decimal.txt @@ -0,0 +1,35 @@ +0 +0.0 +000000000000000000000000.00000000000000000000000 +000000000000000000000000000135482346782356 +000000000000000000000000002 +1 +11 +123 +7505 +1023468723275435238491972521917846 +4343472432431705867392073517038270398027352709027389273920739037937960379637893607893607893670530278200795207952702873892786172916728961783907893607418973587857386079679267926737520730925372983782793652793 +-1 +-203 +-57 +-18586 +-31378682943772818461924738352952347258 +-823945628745673589495067238723986520375698237620834674509627345273096287563846592384526349872634895763257893467523987578690283762897568459072348758071071087813501875908127359018715023841710239872301387278 +.123521346523546 +0.1245923756273856 +-.1024678456387 +-0.8735863475634587 +4.0 +-6.0 +234237468293576.000000000000000000000000000000 +23987623568943567.00000000000000000005677834650000000000000 +23856934568940675.000000000000000435676782300000000000000456784 +77567648698496.000000000000000000587674750000000000458563800000000000000 +2348672354968723.2374823546000000000003256987394502346892435623870000000034578 +-2354768.000000000000000000000000000000000000 +-96739874567.000000000347683456 +-3764568345.000000000004573845000000347683460 +-356784356.934568495770004586495678300000000 +74325437345273852773827101738273127312738521733017537073520735207307570358738257390761276072160719802671980267018728630178.7082681027680521760217867841276127681270867827821768173178207830710978017738178678012767377058785378278207385237085237803278203782037237582795870 +-756752732785273851273728537852738257837283678965738527385272983678372867327835672967385278372637862738627836279863782673862783670.71738178361738718367186378610738617836781603760178367018603760178107735278372832783728367826738627836278378260736270367362073867097307925 +9812734012837410982345719208345712908357412903587192048571920458712.23957182459817249058172945781 diff --git a/tests/fuzzing/bc_inputs1/divide.txt b/tests/fuzzing/bc_inputs1/divide.txt new file mode 100644 index 000000000000..4d0caddc9b52 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/divide.txt @@ -0,0 +1,31 @@ +0 / 1 +0 / 321566 +0 / 0.3984567238456 +1 / 1 +1 / 1287469297356 +1 / 0.2395672438567234 +1 / 237586239856.0293596728392360 +1249687284356 / 3027949207835207 +378617298617396719 / 35748521 +9348576237845624358 / 0.9857829375461 +35768293846193284 / 2374568947.045762839567823 +-78987234567812345 / 876542837618936 +-356789237555535468 / 0.3375273860984786903 +-5203475364850390 / 435742903748307.70869378534043296404530458 +-0.37861723347576903 / 7385770896 +-0.399454682043962 / 0.34824389304 +-0.6920414523873204 / 356489645223.76076045304879030 +-35872917389671.7573280963748 / 73924708 +-78375896314.4836709876983 / 0.78356798637817 +-2374123896417.143789621437581 / 347821469423789.1473856783960 +-896729350238549726 / -34976289345762 +-2374568293458762348596 / -0.8792370647234987679 +-237584692306721845726038 / -21783910782374529637.978102738746189024761 +-0.23457980123576298375682 / -1375486293874612 +-0.173897061862478951264 / -0.8179327486017634987516298745 +-0.9186739823576829347586 / -0.235678293458756239846 +-0.9375896183746982374568 / -13784962873546.0928729395476283745 +-2930754618923467.12323745862937465 / -734869238465 +-23745861923467.874675129834675 / -0.23542357869124756 +-3878923750692883.7238596702834756902 / -7384192674957215364986723.9738461923487621983 +1 / 0.00000000000000000000000000000000000000000002346728372937352457354204563027 diff --git a/tests/fuzzing/bc_inputs1/engineering.txt b/tests/fuzzing/bc_inputs1/engineering.txt new file mode 100644 index 000000000000..cf9c0c1b0117 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/engineering.txt @@ -0,0 +1,19 @@ +obase=1 +0 +1 +-34 +298 +-8933 +29488 +-148232 +8927559 +.2 +-.02 +.002 +-.0003 +.0000209310 +-.00000289362 +.000000859289 +-.02983672 +.20201296 +-.8907210897000000000000000000 diff --git a/tests/fuzzing/bc_inputs1/exponent.txt b/tests/fuzzing/bc_inputs1/exponent.txt new file mode 100644 index 000000000000..40bcf3c5a585 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/exponent.txt @@ -0,0 +1,22 @@ +e(0) +e(0.5) +e(1) +e(1.5) +e(1.74) +e(2) +e(3.2345) +e(5.283957) +e(13.23857) +e(100) +e(283.238957) +e(-0.5) +e(-1) +e(-1.5) +e(-1.74) +e(-2) +e(-3.2345) +e(-5.283957) +e(-13.23857) +e(-100) +e(-283.238957) +e(142.749502399) diff --git a/tests/fuzzing/bc_inputs1/functions.bc b/tests/fuzzing/bc_inputs1/functions.bc new file mode 100644 index 000000000000..80d6d1623d8d --- /dev/null +++ b/tests/fuzzing/bc_inputs1/functions.bc @@ -0,0 +1,7 @@ +e(0.5) + +define e(x) { + return x +} + +e(0.5) diff --git a/tests/fuzzing/bc_inputs1/functions.txt b/tests/fuzzing/bc_inputs1/functions.txt new file mode 100644 index 000000000000..5e540ed66a11 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/functions.txt @@ -0,0 +1,13 @@ +define x(x, y) { + return x - y + 5 +} + +define y(y, x) { + return x(y, x) + x(x, y) +} + +y(1, 4) +y(2, 4) +y(3, 4) +y(4, 3) +y(3, 2) diff --git a/tests/fuzzing/bc_inputs1/globals.txt b/tests/fuzzing/bc_inputs1/globals.txt new file mode 100644 index 000000000000..4b20f5725864 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/globals.txt @@ -0,0 +1,21 @@ +define i(x) { + ibase=x + return ibase +} + +define o(x) { + obase=x + return obase +} + +define r(x) { + scale=x + return scale +} + +i(11) +ibase +o(12) +obase +r(15) +scale diff --git a/tests/fuzzing/bc_inputs1/len.bc b/tests/fuzzing/bc_inputs1/len.bc new file mode 100644 index 000000000000..ec931f2386a5 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/len.bc @@ -0,0 +1,48 @@ +define fast_gcd(a, b) { + + if (a == b) return a; + if (a > b) return fast_gcd(a - b, b) + + return fast_gcd(a, b - a); +} + +define void r_reduce(*r[]) { + + auto g,s; + + if (length(r[]) != 2) sqrt(-1); + if (scale(r[0])) 2^r[0]; + if (scale(r[1])) 2^r[1]; + + if (r[0] >= 0 && r[1] >= 0) g = fast_gcd(r[0], r[1]); + else g = gcd(r[0], r[1]); + + s = scale; + scale = 0; + + r[0] /= g; + r[1] /= g; + + scale = s; +} + +define void r_init(*r[], a, b) { + r[0] = a; + r[1] = b; + r_reduce(r[]); +} + +define void r_initi(*r[], i, a, b) { + + length(r[]); + + r[0] = i * b + a; + r[1] = b; + + length(r[]); + + r_reduce(r[]); +} + +length(a[]) +r_initi(a[], 5, 63, 94); diff --git a/tests/fuzzing/bc_inputs1/length.txt b/tests/fuzzing/bc_inputs1/length.txt new file mode 100644 index 000000000000..48f83c95cf55 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/length.txt @@ -0,0 +1,59 @@ +length(0) +length(1) +length(12) +length(123) +length(1234) +length(12345) +length(123456) +length(1234567) +length(12345678) +length(123456789) +length(1234567890) +length(1.0) +length(12.0) +length(123.0) +length(1234.0) +length(12345.0) +length(123456.0) +length(1234567.0) +length(12345678.0) +length(123456789.0) +length(1234567890.0) +length(.1) +length(.12) +length(.123) +length(.1234) +length(.12345) +length(.123456) +length(.1234567) +length(.12345678) +length(.123456789) +length(.1234567890) +length(.01) +length(.012) +length(.0123) +length(.01234) +length(.012345) +length(.0123456) +length(.01234567) +length(.012345678) +length(.0123456789) +length(.01234567890) +length(.0000000001) +length(.00000000012) +length(.000000000123) +length(.0000000001234) +length(.00000000012345) +length(.000000000123456) +length(.0000000001234567) +length(.00000000012345678) +length(.000000000123456789) +length(.0000000001234567890) +length(289.29837) +length(2893.00000) +length(289.0) +length(1802973.0000000238) +length(.000000000000000093182394080000000000) +a[0] = 0 +a[5] = 0 +length(a[]) diff --git a/tests/fuzzing/bc_inputs1/lib10.txt b/tests/fuzzing/bc_inputs1/lib10.txt new file mode 100644 index 000000000000..7aa3fda19cc7 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib10.txt @@ -0,0 +1,4 @@ +l10(0) +l10(99) +l10(100) +l10(-100) diff --git a/tests/fuzzing/bc_inputs1/lib11.txt b/tests/fuzzing/bc_inputs1/lib11.txt new file mode 100644 index 000000000000..5bb262bd2668 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib11.txt @@ -0,0 +1,4 @@ +perm(10, 2) +comb(10, 2) +perm(6, 2) +comb(6, 2) diff --git a/tests/fuzzing/bc_inputs1/lib12.txt b/tests/fuzzing/bc_inputs1/lib12.txt new file mode 100644 index 000000000000..7d70e1ccdd5e --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib12.txt @@ -0,0 +1 @@ +uint(0) diff --git a/tests/fuzzing/bc_inputs1/lib2.txt b/tests/fuzzing/bc_inputs1/lib2.txt new file mode 100644 index 000000000000..f345bd1669cb --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib2.txt @@ -0,0 +1,15 @@ +r(0, 0) +r(0, 1) +r(0, 100) +r(1, 0) +r(1, 3) +r(1.4, 0) +r(1.5, 0) +r(34.45, 2) +r(64.1223, 4) +r(-1, 0) +r(-1, 3) +r(-1.4, 0) +r(-1.5, 0) +r(-34.45, 2) +r(-64.1223, 4) diff --git a/tests/fuzzing/bc_inputs1/lib3.txt b/tests/fuzzing/bc_inputs1/lib3.txt new file mode 100644 index 000000000000..1da42385ea44 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib3.txt @@ -0,0 +1,6 @@ +f(0) +f(1) +f(2) +f(3) +f(4) +f(5) diff --git a/tests/fuzzing/bc_inputs1/lib4.txt b/tests/fuzzing/bc_inputs1/lib4.txt new file mode 100644 index 000000000000..9f5323375d30 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib4.txt @@ -0,0 +1,10 @@ +binary(0) +hex(0) +binary(1) +hex(1) +binary(2) +hex(2) +binary(15) +hex(15) +binary(16) +hex(16) diff --git a/tests/fuzzing/bc_inputs1/lib5.txt b/tests/fuzzing/bc_inputs1/lib5.txt new file mode 100644 index 000000000000..c69a49167292 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib5.txt @@ -0,0 +1,2 @@ +uint32(2147483647) +int32(2147483647) diff --git a/tests/fuzzing/bc_inputs1/lib6.txt b/tests/fuzzing/bc_inputs1/lib6.txt new file mode 100644 index 000000000000..260e159f9fb6 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib6.txt @@ -0,0 +1,5 @@ +pi(5) +p=pi(scale) +r2d(-p) +d2r(180) +d2r(-180) diff --git a/tests/fuzzing/bc_inputs1/lib7.txt b/tests/fuzzing/bc_inputs1/lib7.txt new file mode 100644 index 000000000000..edd66a40e83a --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib7.txt @@ -0,0 +1,12 @@ +ubytes(0) +ubytes(1) +ubytes(2) +sbytes(0) +sbytes(1) +sbytes(-1) +sbytes(2) +sbytes(127) +sbytes(128) +sbytes(254) +sbytes(255) +sbytes(256) diff --git a/tests/fuzzing/bc_inputs1/lib8.txt b/tests/fuzzing/bc_inputs1/lib8.txt new file mode 100644 index 000000000000..a4cc720c4754 --- /dev/null +++ b/tests/fuzzing/bc_inputs1/lib8.txt @@ -0,0 +1,3 @@ +l2(0) +l2(8) +l2(-8) |