aarch64: tests
This commit is contained in:
parent
fa524bdce3
commit
7dc280a10d
119
makefile
119
makefile
|
@ -1,4 +1,5 @@
|
|||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
|
@ -102,7 +103,36 @@ results:
|
|||
mkdir -p test/results
|
||||
|
||||
# tests
|
||||
test: test00-amd64-binary \
|
||||
test: test00-aarch64-binary \
|
||||
test01-aarch64-binary \
|
||||
test02-aarch64-binary \
|
||||
test03-aarch64-binary \
|
||||
test04-aarch64-binary \
|
||||
test05-aarch64-binary \
|
||||
test06-aarch64-binary \
|
||||
test07-aarch64-binary \
|
||||
test08-aarch64-binary \
|
||||
test09-aarch64-binary \
|
||||
test10-aarch64-binary \
|
||||
test11-aarch64-binary \
|
||||
test12-aarch64-binary \
|
||||
test13-aarch64-binary \
|
||||
test14-aarch64-binary \
|
||||
test15-aarch64-binary \
|
||||
test16-aarch64-binary \
|
||||
test17-aarch64-binary \
|
||||
test18-aarch64-binary \
|
||||
test19-aarch64-binary \
|
||||
test20-aarch64-binary \
|
||||
test21-aarch64-binary \
|
||||
test22-aarch64-binary \
|
||||
test23-aarch64-binary \
|
||||
test24-aarch64-binary \
|
||||
test25-aarch64-binary \
|
||||
test26-aarch64-binary \
|
||||
test99-aarch64-binary \
|
||||
test100-aarch64-binary \
|
||||
test00-amd64-binary \
|
||||
test01-amd64-binary \
|
||||
test02-amd64-binary \
|
||||
test03-amd64-binary \
|
||||
|
@ -236,6 +266,93 @@ test: test00-amd64-binary \
|
|||
test100-x86-binary | results
|
||||
sha256sum -c test/test.answers
|
||||
|
||||
test00-aarch64-binary: M2-Planet | results
|
||||
test/test00/hello-aarch64.sh
|
||||
|
||||
test01-aarch64-binary: M2-Planet | results
|
||||
test/test01/hello-aarch64.sh
|
||||
|
||||
test02-aarch64-binary: M2-Planet | results
|
||||
test/test02/hello-aarch64.sh
|
||||
|
||||
test03-aarch64-binary: M2-Planet | results
|
||||
test/test03/hello-aarch64.sh
|
||||
|
||||
test04-aarch64-binary: M2-Planet | results
|
||||
test/test04/hello-aarch64.sh
|
||||
|
||||
test05-aarch64-binary: M2-Planet | results
|
||||
test/test05/hello-aarch64.sh
|
||||
|
||||
test06-aarch64-binary: M2-Planet | results
|
||||
test/test06/hello-aarch64.sh
|
||||
|
||||
test07-aarch64-binary: M2-Planet | results
|
||||
test/test07/hello-aarch64.sh
|
||||
|
||||
test08-aarch64-binary: M2-Planet | results
|
||||
test/test08/hello-aarch64.sh
|
||||
|
||||
test09-aarch64-binary: M2-Planet | results
|
||||
test/test09/hello-aarch64.sh
|
||||
|
||||
test10-aarch64-binary: M2-Planet | results
|
||||
test/test10/hello-aarch64.sh
|
||||
|
||||
test11-aarch64-binary: M2-Planet | results
|
||||
test/test11/hello-aarch64.sh
|
||||
|
||||
test12-aarch64-binary: M2-Planet | results
|
||||
test/test12/hello-aarch64.sh
|
||||
|
||||
test13-aarch64-binary: M2-Planet | results
|
||||
test/test13/hello-aarch64.sh
|
||||
|
||||
test14-aarch64-binary: M2-Planet | results
|
||||
test/test14/hello-aarch64.sh
|
||||
|
||||
test15-aarch64-binary: M2-Planet | results
|
||||
test/test15/hello-aarch64.sh
|
||||
|
||||
test16-aarch64-binary: M2-Planet | results
|
||||
test/test16/hello-aarch64.sh
|
||||
|
||||
test17-aarch64-binary: M2-Planet | results
|
||||
test/test17/hello-aarch64.sh
|
||||
|
||||
test18-aarch64-binary: M2-Planet | results
|
||||
test/test18/hello-aarch64.sh
|
||||
|
||||
test19-aarch64-binary: M2-Planet | results
|
||||
test/test19/hello-aarch64.sh
|
||||
|
||||
test20-aarch64-binary: M2-Planet | results
|
||||
test/test20/hello-aarch64.sh
|
||||
|
||||
test21-aarch64-binary: M2-Planet | results
|
||||
test/test21/hello-aarch64.sh
|
||||
|
||||
test22-aarch64-binary: M2-Planet | results
|
||||
test/test22/hello-aarch64.sh
|
||||
|
||||
test23-aarch64-binary: M2-Planet | results
|
||||
test/test23/hello-aarch64.sh
|
||||
|
||||
test24-aarch64-binary: M2-Planet | results
|
||||
test/test24/hello-aarch64.sh
|
||||
|
||||
test25-aarch64-binary: M2-Planet | results
|
||||
test/test25/hello-aarch64.sh
|
||||
|
||||
test26-aarch64-binary: M2-Planet | results
|
||||
test/test26/hello-aarch64.sh
|
||||
|
||||
test99-aarch64-binary: M2-Planet | results
|
||||
test/test99/hello-aarch64.sh
|
||||
|
||||
test100-aarch64-binary: M2-Planet | results
|
||||
test/test100/hello-aarch64.sh
|
||||
|
||||
test00-amd64-binary: M2-Planet | results
|
||||
test/test00/hello-amd64.sh
|
||||
|
||||
|
|
|
@ -1,130 +1,159 @@
|
|||
3f35cb352bf0de4f69542a09c37913e0da6ed9422dc3a3bfd403fed6093d05d0 test/results/test00-aarch64-binary
|
||||
e4482d2133772d1d9a00d30a8f46fee405a20b2354414fc735cbed077be7b61b test/results/test00-amd64-binary
|
||||
25b38a3f5ad81ed4618a3d60fe00e0eb1bf88366f4eb031c02a9f880440ae207 test/results/test00-armv7l-binary
|
||||
0c93110e4cf2f8f69eb3a308162478e644ee63fd4881762161be5de50fbe9f06 test/results/test00-knight-native-binary
|
||||
64879eebceb475f21e54cb1f2e872996ca80e8c1fbb8b5895fb5fb6bac0c4384 test/results/test00-knight-posix-binary
|
||||
c52562bd0aabb86ce8ca177f22f8d0455769b444df2d4d62894faab63b7151d8 test/results/test00-x86-binary
|
||||
c3334a519c8d08046b35fd8960231bb90f0435139bbdff57cc64dd462d947818 test/results/test01-aarch64-binary
|
||||
2c968b3736b6f2828982bad905018bfc4f159d7871e825f86a8f50b55b90b143 test/results/test01-amd64-binary
|
||||
c04bda3cf219832b37e945e416fff106b927703a23af0da2bbfa07fc812a0d92 test/results/test01-armv7l-binary
|
||||
bff3ae5a240cd319570ef0c81c499cea51c821bc1369456c23a4206e6072865e test/results/test01-knight-native-binary
|
||||
486ee05ccea796a9cfa9bfb23189b8e014b7ce8d14fea03b27d679d410fe17dd test/results/test01-knight-posix-binary
|
||||
eae96857f2b6d8e8ba86ac06e72345ea572622b358b23978bb5f2db1baadf41c test/results/test01-x86-binary
|
||||
5343c5646e162e5f4091db4a67ad6040cf25d24ed7db4ee70cb1ff0ed1b11f05 test/results/test02-aarch64-binary
|
||||
c742a827684287cb82b4a3526eb996eda941bf284e11aab431816a3ef1e0804c test/results/test02-amd64-binary
|
||||
ef25f00027ebb22cccb9a321e6c89c380090e365c6ad691617378a1d89009d89 test/results/test02-armv7l-binary
|
||||
7631c0f224100786a4b002b4353da4ea56ecb0d6f3ac1a7bc5827b6e257d0748 test/results/test02-knight-native-binary
|
||||
e6493845b9e94a617649638252f23502f9212de583fd00cba6cc07fffd296e32 test/results/test02-knight-posix-binary
|
||||
8ead336d2f3f72d5874230492e0472edec61d355905e8636e3dfb2731695037c test/results/test02-x86-binary
|
||||
8690f1844e6312623b7adccba3b7bef2251ceb867bc06ece9dbc4667dfe45fbd test/results/test03-aarch64-binary
|
||||
c611b3cab0a736e7176dac21aa04555039b28362d0cfd3a5c56cf29ca3e48616 test/results/test03-amd64-binary
|
||||
a80264844e0d16e53c0853a5a59452343fd9504408f37ae02f7063bbd15f0220 test/results/test03-armv7l-binary
|
||||
f4affc4dd2112ecf8ec3c40ea5e575d579fc60ff9df8b244dddc1a495e9529d6 test/results/test03-knight-native-binary
|
||||
96849d5a9294799a9648c24db21b2dab1555dd5ba69d172d77df800622347226 test/results/test03-knight-posix-binary
|
||||
2313cb3f1a2b9eb6bf15f8d43418e15d6c16f7f1b5c22700fdfc2b38beb59192 test/results/test03-x86-binary
|
||||
6ea7f177bff8e09e1fe9edaa85abd32013358aa36e8fb853e58da0398c5b4fe1 test/results/test04-aarch64-binary
|
||||
b773d7ec7c550b71997ce451af7e1ee59fe6597b32adc455b271b7d173d5eae9 test/results/test04-amd64-binary
|
||||
fc9de9b27e154643e221f9d8281956809db5ee9f85a56d990f8a7de66d47f10a test/results/test04-armv7l-binary
|
||||
343306548109a79f599b64f8ad63331cf6a4328eb5ddb2a1f19f6eebec6b254a test/results/test04-knight-native-binary
|
||||
df9ba08dfa69ac6cbb4483146dbbe079ef575d7de8318e2e52283151ebf24bd3 test/results/test04-knight-posix-binary
|
||||
b7ddb37063c541c6a315809c4438aa235d6702f54bb64f4ffc88dbe78617de81 test/results/test04-x86-binary
|
||||
706283ab5dfefb4c60241baade0d9ed708834a1f839b641a89c99a1df13476a9 test/results/test05-aarch64-binary
|
||||
c4e5e2ffc3a2c3d4116589fa1369d45e5af91cc69b5d342ef5552dfca992c64b test/results/test05-amd64-binary
|
||||
748f6b9825bf9b72908dfee1ea674eaf1c3c63b0100a3e3195efefabe5048280 test/results/test05-armv7l-binary
|
||||
ac909d377dad4961c3df5bb780b1562015e79f8f866d07b4fefaa19f5521f32a test/results/test05-knight-native-binary
|
||||
290a68de66c3a83ef5bd75aa1d3b9057d0d6740b310072d11f9daacb184e9100 test/results/test05-knight-posix-binary
|
||||
90321c43b2384050e5f03e5af67d345b55dd8a43e96d1f3b7f29d3c5dae3f077 test/results/test05-x86-binary
|
||||
612a3b7c5a4593d7d498683198bbe328d837a442c7cde7179bb098bc6841a74a test/results/test06-aarch64-binary
|
||||
98fab6d12630465d4e3cb72102b541c818e75b034e1ca1823c26ad6dabc4a910 test/results/test06-amd64-binary
|
||||
bb913bdbfb77b855d416a6051e0d5646275fe6eed7a89cf3373be14d83bef1c5 test/results/test06-armv7l-binary
|
||||
169d83f5dd34a1d764716342149f56db492b1f790ce323c5e93b4d577f772e7b test/results/test06-knight-native-binary
|
||||
b177d769ae44c3509d9a08d0ee631ec69654dc5d723408bf0decdc67c42aae27 test/results/test06-knight-posix-binary
|
||||
663fc6eefe965f237b6bf5a211398c8ae1210f97ff39b59603677e92462c68c7 test/results/test06-x86-binary
|
||||
3a294ea084925a16d4df22d17f1b7ae5599b1227c081a4b3238389010e760658 test/results/test07-aarch64-binary
|
||||
58af02adcf5a1bfa21dae4992ed3fe0a1f708c67bb5bf1f842a51b3b8eeddf05 test/results/test07-amd64-binary
|
||||
5ce09fce0c670056284cf18586151060dc56e2b3b87c816939b66d351e70ccf6 test/results/test07-armv7l-binary
|
||||
525ba92027d697564cd7d7611aa32c33486e55e2e60ecf19d700bf2884571975 test/results/test07-knight-native-binary
|
||||
9159c4ba8196b24ec78bc9ebfbc7066d510ddbf03461736e7795a48634134dc5 test/results/test07-knight-posix-binary
|
||||
a9a3e332d13ded5f80d7431f8717f26527b3722b33ea57760a9a5723dffc099c test/results/test07-x86-binary
|
||||
0aaf0645c367876a711aa33266939f20fd03bc8c4fbf75d008c0e0709fa6a146 test/results/test08-aarch64-binary
|
||||
3a9a7815ad19bbdd9ea6921ecae8521089df27ac08bc207df11a2a0080f5acbb test/results/test08-amd64-binary
|
||||
28b9834ef90a721c6cba5ca818547d607d0e1a63c60ddd684b6aff885cd21fc2 test/results/test08-armv7l-binary
|
||||
16c6a5a8f3723fd464d8bded94ceaeef96e95a83e38caa380bd2d5cc375415c4 test/results/test08-knight-native-binary
|
||||
b824859fd0e39f1417742a1b9a1cec18ade78afdd80ce2c64cb54cdf7683f53a test/results/test08-knight-posix-binary
|
||||
3a099298d2235ad00518bb6e2f2f9e25d429c4fe576dfc9cf083e3e0053bdcc2 test/results/test08-x86-binary
|
||||
d4094a55cba28c257f13e2405606dce7294a4cd161a5ab9b4d21253074d85c0a test/results/test09-aarch64-binary
|
||||
b1251d03f35474f9c5cec84d067d97295a47ae34dbd9f12e72a3630127cc1e07 test/results/test09-amd64-binary
|
||||
4fd3351f92149ccfb103a2d09a28a90939fb828d56f14c1b39fa4507c32a8f1a test/results/test09-armv7l-binary
|
||||
e046d0be9ebb80c6053682f37af5ed18fece5afb089f67ecf98556700d7e85f0 test/results/test09-knight-native-binary
|
||||
990e82bccca98e6393f72b659abc2eb6069f272202286ce2ca51e9d8a941f3cd test/results/test09-knight-posix-binary
|
||||
9e4a0a6216bb4fde5dcefac91fd7c623e9e00b3e762946e5a47a1b50b4656103 test/results/test09-x86-binary
|
||||
3d710d53b95d0f090ee0ef2ed55d51a91601cdc0547299527fe16863adabbd8c test/results/test10-aarch64-binary
|
||||
a9cf4422e05075395ad75bbfe4b2659aec4541edd46d8c6b5064d3496b06a0b6 test/results/test10-amd64-binary
|
||||
a0ae067746e7a2b01d33950da1cf640e12c3a70a045ab331ea2025af59dec9af test/results/test10-armv7l-binary
|
||||
e01b615db5df31392bd1054c45141dcff936b11dfb1cad270edc0aa67653f5a1 test/results/test10-knight-native-binary
|
||||
c1b5a2a3cd46c5e95e5540e871c2a916e028684ca80f51c001ef489342e27625 test/results/test10-knight-posix-binary
|
||||
b3e13d54aab689137628fb9c4487bfd8288f9bd18bef8fe756577c8d2dce1f1f test/results/test10-x86-binary
|
||||
654cf981356abe8e7e3303c5dc462b1306b21fa543f9bfedcf2de4f8b5fc320d test/results/test100-aarch64-binary
|
||||
4986b1dd5917c2b8e1d43db0046e1156bcc2bd5e61bf09295c21129b548bb2dc test/results/test100-amd64-binary
|
||||
546fa052705af729d91243b01200619749e94a2b89dfd132845ec5e8363baacc test/results/test100-armv7l-binary
|
||||
2ab893986a397fcbc07738d3ec2ae40d042cac288c6d840a6ab53148a3dd8442 test/results/test100-knight-posix-binary
|
||||
e3e5cf90f6b6bc27e027514ed221e4851a98963dfe5a642227843827aaf8ce93 test/results/test100-x86-binary
|
||||
d5ac894e7131976d45952e2d2b1792be2a0b1091fa1930fa8a3ba87248debc78 test/results/test11-aarch64-binary
|
||||
34e6d535e30ef8826a4ad1a4d08b76cfa370c54595599ad3be784b64c9cd8ec5 test/results/test11-amd64-binary
|
||||
893695e6f300a0fe055fad935a56abd549bba70d1d39c535a680f41bbb73f117 test/results/test11-armv7l-binary
|
||||
7115c4a552eb4b2c1a868ac3dca43be7d040c8e89b7b66851d0522d298429af9 test/results/test11-knight-native-binary
|
||||
63fd5fbf389d1b19031026df193ec55e98d923b8568007125b80bc246c094496 test/results/test11-knight-posix-binary
|
||||
3fd11bad4a426ce1ff8fd9c6d7d2b943effae9f3f5740b7376e426e9b0555851 test/results/test11-x86-binary
|
||||
d592bac6cb95d66475c01d619b57860a74d8904b121fa4da9b260f2edebf3384 test/results/test12-aarch64-binary
|
||||
dc88f6de5ae892774760843079eab57306bf0f6f683d4999bdec0d43e4e762b2 test/results/test12-amd64-binary
|
||||
08b9c0110bd2fa0a6653b3064ad194e7dc2f333f57068845a0abab7f5a13499f test/results/test12-armv7l-binary
|
||||
61d043a6b25c34d470b01e8b8458427c32350574ba9f69eeed01ad1cde444167 test/results/test12-knight-native-binary
|
||||
313536f9209d29d4c3b40f6ada898f81c1fb3b650ca1a84754f90b1db3b9e001 test/results/test12-knight-posix-binary
|
||||
f98ab8e4bb35580e0dde96126d7a56aff66bda208d02c8d89390b40d6cff591c test/results/test12-x86-binary
|
||||
8e00bb23decba7848202bde3e0362a08ea6515b5ec717a531f5eb12d2403761d test/results/test13-aarch64-binary
|
||||
5095e23b0d6680de3e28c1898b66c352761522f42313acb96f6f39bf0707f4bb test/results/test13-amd64-binary
|
||||
b72e3ad2a245af1ea94de50faec05d56dfe031e75dff4cdde75e1c92c3d617a6 test/results/test13-armv7l-binary
|
||||
291900015203744afc992273d19517e5c1aa9babca7d6d04a2f31b502b163414 test/results/test13-knight-native-binary
|
||||
e50c97ba330823cb5cbe938bb9d1575340b083e60fc42db8edefcfd95851daa2 test/results/test13-knight-posix-binary
|
||||
5051ffca2615144419f8ec1a5d4999486ae81e7781428f59e47e866af97cef92 test/results/test13-x86-binary
|
||||
ca8c0ec6cdab8cda58e1d5c01a7f8335d47147d90ef6b4a221997925a9334108 test/results/test14-aarch64-binary
|
||||
bcc5f70b76fd7ff1a8ccbc1d13e41044b3a6f2b7158194fc0a669b0ba07d0969 test/results/test14-amd64-binary
|
||||
2df8a834bfabc03f04214bc330870c075367f32dd40a31e9028927dafac1f091 test/results/test14-armv7l-binary
|
||||
38c83f8d176c3cd70fcb82658b7376487402f550b2e32181dfcd5b942ae949a0 test/results/test14-knight-posix-binary
|
||||
a8218958b628066e2fda63d3933f1bf607c358d7bdfe84fc02596393698ea5f6 test/results/test14-x86-binary
|
||||
1780e5ca32bc70bf568499571db219f16f1488e9dfeacdb48b998a15d2c520d0 test/results/test15-aarch64-binary
|
||||
0526b33e314a881746bb108d0ec68a3f11b96d1b92b287816235f825210bff2a test/results/test15-amd64-binary
|
||||
58d7d1ac0470fbbb7681cea0f377c22d54a9453dcc86d68e2f93fdb7e4f960cf test/results/test15-armv7l-binary
|
||||
9f7c81e278248a3160d80a3f5ca0c39a5505ca9b45adc002e9b527db3e5f084a test/results/test15-knight-posix-binary
|
||||
f24c62fb54b9ab510ce1b3a36d119e3b5d2ed56e33564c83782d828eac6a6773 test/results/test15-x86-binary
|
||||
5fbde5127c635f381f493ff232fd66e73b89f1221f51337f72eede1072e18ad5 test/results/test16-aarch64-binary
|
||||
d8dbd22939091d04ccc969d848b4e4e2a6b5c9a8c91779923830fd6aa1a0f779 test/results/test16-amd64-binary
|
||||
cc0213dd7b1c368c1245c30a5c7fb520f8e1beded3acf136c48f2a015f29df0b test/results/test16-armv7l-binary
|
||||
84f5472ce5711b9cad28fcd4c177eea673047c2561ea010ccb6bf5f50d89c713 test/results/test16-knight-posix-binary
|
||||
aeb94a4142633f20d7be4f8e74f0d5edc9050afb76f49cb504a1c264bf1ef96b test/results/test16-x86-binary
|
||||
486b98f898acad34abfa2a1db34a855eed21fc926bb1d8eec8e6e1fb9b36ef1f test/results/test17-aarch64-binary
|
||||
826be2799b14be83652ee28ae18e45728987205346eaba5fbffd4c6894dbec33 test/results/test17-amd64-binary
|
||||
1e630c50633011aa2e78f05be2bf71f90e288117008d53b7c673255e74c4cac2 test/results/test17-armv7l-binary
|
||||
47e3fe786d27493a94c1f8aac0394e7726f85268cf0d7cfa02295f0d1629cb4a test/results/test17-knight-native-binary
|
||||
cf67b71d4010910ccf2264c52d7253b092afa88be14890f36927fe595d71cf7f test/results/test17-knight-posix-binary
|
||||
a29899250b4ee3c722045a8feedaec2e0f537b9a148f23d10d1979e135f14038 test/results/test17-x86-binary
|
||||
7c0eb777792e68f33e1197d0decd031147d5aa8bcabcbff76d592271957a02f2 test/results/test18-aarch64-binary
|
||||
b5835e920eef10e0e0772d51354f1a7d5c34534f7ec287570283a5e8d5c201f3 test/results/test18-amd64-binary
|
||||
b2b679f715351406abefa43531d9374b118d77abdb1c5edd38f65a7b586461f4 test/results/test18-armv7l-binary
|
||||
aee694dc1e2e98d69e21f6f4f95120989e8b928379f3b290fee60fd5e32882ef test/results/test18-knight-native-binary
|
||||
d69b92c0fa774dfcdbfdf836d753caed64f99f7a3d9b73187c3e2aea53b30085 test/results/test18-knight-posix-binary
|
||||
b70966d2d772c95c3a555dac582137a7a7dfdc97fc9edaced5107313233dd7f8 test/results/test18-x86-binary
|
||||
6ca3d94cbbe4ed3ee4d534562c9b7a1d110e8d9fd723b819a35cce07291c089f test/results/test19-aarch64-binary
|
||||
b29dadde5f218707a5c574b0097e1d84091baae0df28d79645b517d7bc4dffda test/results/test19-amd64-binary
|
||||
1d579a8ada5d3a2b3bc17dd9a4e5f0d65bd5e7fc173df47548afc8e09fbc30ce test/results/test19-armv7l-binary
|
||||
364ed9dcff06fe54ea4d96c6b3b99a9456fd4dd95ea726f98fdf7cfb8eb3825b test/results/test19-knight-posix-binary
|
||||
8b28cb3303fa119378294acb2592fe4eec2ac5346932596e3f8570dc50af6cf9 test/results/test19-x86-binary
|
||||
c05fc115f549a77d1b6d846d1c6021b81ae6d12e3b55d7a3747e3c1ee2996b25 test/results/test20-aarch64-binary
|
||||
15950e38bab2603bfcb369b9a4941abfc2e37b7cbbd2cf9b22ebfc9aab46d5ad test/results/test20-amd64-binary
|
||||
80612ce05a2e43fceb34139577be98794505cd324ff5bc84ba004a21828b5f86 test/results/test20-armv7l-binary
|
||||
d9d40f64041a02b6a403fd3c07550cf53f9383e0ec7f7208c9c263d06ea3ce8f test/results/test20-knight-native-binary
|
||||
6a59795dbb4397d0efaf1ad613d646ec435eec62db30eb758bcf2499d651520e test/results/test20-knight-posix-binary
|
||||
0d1a43723d0482a21028164e33ff116d66302d6042a88eacf08436a351494530 test/results/test20-x86-binary
|
||||
9ce139e36baf0ee64a55bf69a7140db547fb20f9a5a7372bbe7cc17ddad04979 test/results/test21-aarch64-binary
|
||||
0fab8f708839019a8dcda693acf0542c585b00b464a700cdcb64dd0cdfb0b6a0 test/results/test21-amd64-binary
|
||||
644b5a7f6f40828cebbca5e6537ce1aaaf9fa4f1451671a40e1cfd4516a30a2d test/results/test21-armv7l-binary
|
||||
80d49242c8eec979b576c3455a57d46efa75014cf607fc777b59dc1943259a6e test/results/test21-knight-posix-binary
|
||||
1fa52023ea0f9e18bc6fab2a62fc8383ff1a9d97a6f0e3da9698268bf7565b99 test/results/test21-x86-binary
|
||||
afb0d2c45ca8190ece1df2b98ccc1abc2ee204f593c716cb684f20d6b4c709d9 test/results/test22-aarch64-binary
|
||||
8b3fc360938fe30c6b1a8c1fd368cd990761c35d8d0a3b5499cdca23127f36cf test/results/test22-amd64-binary
|
||||
ef1c7437223311d13429b43f59aafe5b9cd3c01939b59a935aa1dd55f417ebcf test/results/test22-armv7l-binary
|
||||
387ae179f593ad27a1ae96f9f20b7cf69bf201a74d2a69fc9b60faeeec9fa811 test/results/test22-knight-posix-binary
|
||||
46f4645cf23a415fe96f73826595a2dc29661fd2365978f387c256e0469bf51c test/results/test22-x86-binary
|
||||
d93dd366f0bbff6740e89b2d82a8a6d894ecffbea31f698231355e68bb999161 test/results/test23-aarch64-binary
|
||||
13a8033841a8805b13621e305755d0885154615fe1d126a3db4969854cfb8b40 test/results/test23-amd64-binary
|
||||
9ef467b01c5af7f5c966671c5249ff8cb88f62e6c48fcd824254e0616d8d915c test/results/test23-armv7l-binary
|
||||
897a5bc96a007a6eaf4337b630fb05d576fd42d35682c96a1f3c319f85f2b1ba test/results/test23-knight-posix-binary
|
||||
f53e041af9ec8bc34f6b7accedafe0c3bc40e09edfee3ad18144e7bb04e274e6 test/results/test23-x86-binary
|
||||
2a6d910a08d150ae6ef985716389c02b25fa41526002ff8e235bc72e71bc4f2b test/results/test24-aarch64-binary
|
||||
ed1eb588d8b14a370729d1426f8c1b1cc9cbfeaffe80012558ab74dadd82fbf8 test/results/test24-amd64-binary
|
||||
91f8415a8358a26aa99706d990a35761cd5e4f313a32ef45ab5bc49a47435249 test/results/test24-armv7l-binary
|
||||
44b37b8d45d8c0a6e983168e5646ef652deab2fcd327cb255bc2a71289f471ff test/results/test24-knight-posix-binary
|
||||
29216c9761435396912cb03a414ac74cde165a522cf19a7cccac212b06d3a597 test/results/test24-x86-binary
|
||||
9c3b36e8d0c41ac4fd3c650c01c26c42f2e53b23703242d3e0f96b64f50414f2 test/results/test25-aarch64-binary
|
||||
d21614c94b45087430a034c1b971f2e9953a4b71f46ec2de00f8549e3b82f5db test/results/test25-amd64-binary
|
||||
f414d86f296579ce1f9b6d21734c447ffe7327d324d43dfed5f4c1d20b322915 test/results/test25-armv7l-binary
|
||||
74ba43bffc60656eb030e229ba5bb0b36dbae093cdbb3f59c9586b16d56002e5 test/results/test25-x86-binary
|
||||
19316443ba9fd25fa7079902aa4fc6261628cc0600f2b94dbf436e3848102370 test/results/test26-aarch64-binary
|
||||
60206125928d77a758cd73ec8e85f8592423ce678570ebbe7876b71dc38aaeaf test/results/test26-amd64-binary
|
||||
649349e01a90ce93ba72ba1b9bb81a9bd9d79b580ddff366173c98835c10b976 test/results/test26-armv7l-binary
|
||||
576511f1f6699e7798bcab2f36bf8eb86825fd13748770b17f46c3a691200b01 test/results/test26-x86-binary
|
||||
fd72ce6ebbf8263ef9fdff9ca7d789a55ba399ab222c2f5f93b138c61830376d test/results/test99-aarch64-binary
|
||||
717c42e1a1a91ef5b67ce298bc92a148418a5dec6761a358a52b22a01f16c928 test/results/test99-amd64-binary
|
||||
4e759b212b087824f7b0f14c5147272c9984c4a4d00074b2fd771c3d004c9aec test/results/test99-armv7l-binary
|
||||
45116095f72aa1a4bf09aeff9f9ddc11e0c7ca3b0c380be930ad8db762088770 test/results/test99-knight-native-binary
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/test00/return.c \
|
||||
-o test/test00/return.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test00/return.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test00/return.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test00/return.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test00-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
./test/results/test00-aarch64-binary
|
||||
[ 42 = $? ] || exit 4
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,52 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test01/library_call.c \
|
||||
-o test/test01/library_call.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test01/library_call.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test01/library_call.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test01/library_call.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test01-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test01-aarch64-binary 2>&1)
|
||||
[ 42 = $? ] || exit 3
|
||||
[ "$out" = "Hello mes" ] || exit 4
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,52 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test02/if.c \
|
||||
-o test/test02/if.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test02/if.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test02/if.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test02/if.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test02-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test02-aarch64-binary 2>&1)
|
||||
[ 42 = $? ] || exit 4
|
||||
[ "$out" = "Hello mes" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,52 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test03/constant.c \
|
||||
-o test/test03/constant.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test03/constant.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test03/constant.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test03/constant.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test03-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test03-aarch64-binary 2>&1)
|
||||
[ 42 = $? ] || exit 4
|
||||
[ "$out" = "Hello mes" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,52 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test04/call.c \
|
||||
-o test/test04/call.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test04/call.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test04/call.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test04/call.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test04-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test04-aarch64-binary 2>&1)
|
||||
[ 42 = $? ] || exit 4
|
||||
[ "$out" = "Hello mes" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,52 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test05/string.c \
|
||||
-o test/test05/string.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test05/string.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test05/string.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test05/string.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test05-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test05-aarch64-binary 2>&1)
|
||||
[ 42 = $? ] || exit 4
|
||||
[ "$out" = "Hello mes" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,52 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/test06/for.c \
|
||||
-o test/test06/for.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test06/for.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test06/for.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test06/for.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test06-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test06-aarch64-binary >| test/test06/proof || exit 4
|
||||
out=$(sha256_check test/test06/proof.answer)
|
||||
[ "$out" = "test/test06/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test07/do.c \
|
||||
-o test/test07/do.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test07/do.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test07/do.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test07/do.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test07-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test07-aarch64-binary >| test/test07/proof || exit 4
|
||||
out=$(sha256_check test/test07/proof.answer)
|
||||
[ "$out" = "test/test07/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f test/test08/struct.c \
|
||||
-o test/test08/struct.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test08/struct.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test08/struct.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test08/struct.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test08-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test08-aarch64-binary 2>&1 )
|
||||
[ 32 = $? ] || exit 4
|
||||
[ "$out" = "35419896642975313541989657891634" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,52 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test09/goto.c \
|
||||
-o test/test09/goto.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test09/goto.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test09/goto.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test09/goto.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test09-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test09-aarch64-binary 2>&1 )
|
||||
[ 42 = $? ] || exit 4
|
||||
[ "$out" = "Hello mes" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f test/test10/nested_struct.c \
|
||||
-o test/test10/nested_struct.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test10/nested_struct.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test10/nested_struct.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test10/nested_struct.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test10-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test10-aarch64-binary 2>&1 )
|
||||
[ 24 = $? ] || exit 4
|
||||
[ "$out" = "35419896642975313541989657891634" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,92 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
./bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f functions/match.c \
|
||||
-f functions/in_set.c \
|
||||
-f functions/numerate_number.c \
|
||||
-f functions/file_print.c \
|
||||
-f functions/number_pack.c \
|
||||
-f functions/string.c \
|
||||
-f functions/require.c \
|
||||
-f cc.h \
|
||||
-f cc_reader.c \
|
||||
-f cc_strings.c \
|
||||
-f cc_types.c \
|
||||
-f cc_core.c \
|
||||
-f cc.c \
|
||||
--debug \
|
||||
-o test/test100/cc.M1 || exit 1
|
||||
|
||||
# Build debug footer
|
||||
blood-elf --64 -f test/test100/cc.M1 \
|
||||
-o test/test100/cc-footer.M1 || exit 2
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test100/cc.M1 \
|
||||
-f test/test100/cc-footer.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test100/cc.hex2 || exit 3
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64-debug.hex2 \
|
||||
-f test/test100/cc.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test100-aarch64-binary --exec_enable || exit 4
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the resulting file works
|
||||
./test/results/test100-aarch64-binary --architecture x86 \
|
||||
-f test/common_x86/functions/file.c \
|
||||
-f test/common_x86/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f test/common_x86/functions/exit.c \
|
||||
-f functions/match.c \
|
||||
-f functions/in_set.c \
|
||||
-f functions/numerate_number.c \
|
||||
-f functions/file_print.c \
|
||||
-f functions/number_pack.c \
|
||||
-f functions/string.c \
|
||||
-f functions/require.c \
|
||||
-f cc.h \
|
||||
-f cc_reader.c \
|
||||
-f cc_strings.c \
|
||||
-f cc_types.c \
|
||||
-f cc_core.c \
|
||||
-f cc.c \
|
||||
-o test/test100/proof || exit 5
|
||||
|
||||
. ./sha256.sh
|
||||
out=$(sha256_check test/test100/proof.answer)
|
||||
[ "$out" = "test/test100/proof: OK" ] || exit 6
|
||||
[ ! -e bin/M2-Planet ] && mv test/results/test100-x86-binary bin/M2-Planet
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test11/break-do.c \
|
||||
-o test/test11/break-do.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test11/break-do.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test11/break-do.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test11/break-do.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test11-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test11-aarch64-binary >| test/test11/proof || exit 4
|
||||
out=$(sha256_check test/test11/proof.answer)
|
||||
[ "$out" = "test/test11/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test12/break-for.c \
|
||||
-o test/test12/break-for.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test12/break-for.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test12/break-for.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test12/break-for.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test12-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test12-aarch64-binary >| test/test12/proof || exit 4
|
||||
out=$(sha256_check test/test12/proof.answer)
|
||||
[ "$out" = "test/test12/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/test13/break-while.c \
|
||||
-o test/test13/break-while.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test13/break-while.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test13/break-while.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test13/break-while.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test13-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test13-aarch64-binary >| test/test13/proof || exit 4
|
||||
out=$(sha256_check test/test13/proof.answer)
|
||||
[ "$out" = "test/test13/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,52 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/test14/basic_args.c \
|
||||
-o test/test14/basic_args.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test14/basic_args.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test14/basic_args.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test14/basic_args.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test14-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test14-aarch64-binary 314 1 5926 5 35897 932384626 43 383279 50288 419 71693 99375105 820974944 >| test/test14/proof || exit 4
|
||||
out=$(sha256_check test/test14/proof-aarch64.answer)
|
||||
[ "$out" = "test/test14/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1 @@
|
|||
d6ea895188b98e75da4d4218b7e7caaf75851fd0147473395e9b3f16e65c78aa test/test14/proof
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/test15/file_read.c \
|
||||
-o test/test15/file_read.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test15/file_read.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test15/file_read.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test15/file_read.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test15-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test15-aarch64-binary test/test15/file_read.c >| test/test15/proof || exit 4
|
||||
out=$(sha256_check test/test15/proof.answer)
|
||||
[ "$out" = "test/test15/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/test16/file_write.c \
|
||||
-o test/test16/file_write.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test16/file_write.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test16/file_write.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test16/file_write.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test16-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test16-aarch64-binary test/test16/proof || exit 4
|
||||
out=$(sha256_check test/test16/proof.answer)
|
||||
[ "$out" = "test/test16/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,54 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/test17/memset.c \
|
||||
-o test/test17/memset.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test17/memset.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test17/memset.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test17/memset.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test17-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test17-aarch64-binary >| test/test17/proof || exit 4
|
||||
out=$(sha256_check test/test17/proof.answer)
|
||||
[ "$out" = "test/test17/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,54 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f test/test18/math.c \
|
||||
-o test/test18/math.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test18/math.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test18/math.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test18/math.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test18-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test18-aarch64-binary >| test/test18/proof || exit 4
|
||||
out=$(sha256_check test/test18/proof.answer)
|
||||
[ "$out" = "test/test18/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,59 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f functions/match.c \
|
||||
-f functions/in_set.c \
|
||||
-f functions/numerate_number.c \
|
||||
-f functions/file_print.c \
|
||||
-f test/test19/getopt.c \
|
||||
-o test/test19/getopt.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test19/getopt.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test19/getopt.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test19/getopt.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test19-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test19-aarch64-binary -f test/test19/input -o test/test19/proof || exit 4
|
||||
out=$(sha256_check test/test19/proof.answer)
|
||||
[ "$out" = "test/test19/proof: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,53 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f test/test20/struct.c \
|
||||
-o test/test20/struct.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test20/struct.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test20/struct.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test20/struct.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test20-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test20-aarch64-binary 2>&1 )
|
||||
[ 40 = $? ] || exit 4
|
||||
[ "$out" = "35419896642975313541989657891634" ] || exit 5
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,69 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
./bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f functions/file_print.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f functions/match.c \
|
||||
-f test/test21/blood-elf.c \
|
||||
--debug \
|
||||
-o test/test21/blood-elf.M1 || exit 1
|
||||
|
||||
# Build debug footer
|
||||
blood-elf --64 -f test/test21/blood-elf.M1 \
|
||||
-o test/test21/blood-elf-footer.M1 || exit 2
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test21/blood-elf.M1 \
|
||||
-f test/test21/blood-elf-footer.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test21/blood-elf.hex2 || exit 3
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test21/blood-elf.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test21-aarch64-binary \
|
||||
--exec_enable || exit 4
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test21-aarch64-binary --version 2>&1 )
|
||||
[ 0 = $? ] || exit 5
|
||||
[ "$out" = "blood-elf 0.1
|
||||
(Basically Launches Odd Object Dump ExecutabLe Files" ] || exit 6
|
||||
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test21-aarch64-binary -f test/test21/test.M1 -o test/test21/proof || exit 7
|
||||
out=$(sha256_check test/test21/proof.answer)
|
||||
[ "$out" = "test/test21/proof: OK" ] || exit 8
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,77 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
./bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f functions/file_print.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f functions/match.c \
|
||||
-f functions/in_set.c \
|
||||
-f functions/numerate_number.c \
|
||||
-f test/common_aarch64/functions/stat.c \
|
||||
-f test/test22/hex2_linker.c \
|
||||
--debug \
|
||||
-o test/test22/hex2_linker.M1 || exit 1
|
||||
|
||||
# Build debug footer
|
||||
blood-elf --64 -f test/test22/hex2_linker.M1 \
|
||||
-o test/test22/hex2_linker-footer.M1 || exit 2
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test22/hex2_linker.M1 \
|
||||
-f test/test22/hex2_linker-footer.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test22/hex2_linker.hex2 || exit 3
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64-debug.hex2 \
|
||||
-f test/test22/hex2_linker.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test22-aarch64-binary \
|
||||
--exec_enable || exit 4
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test22-aarch64-binary --version 2>&1 )
|
||||
[ 0 = $? ] || exit 5
|
||||
[ "$out" = "hex2 0.3" ] || exit 6
|
||||
|
||||
. ./sha256.sh
|
||||
# Verify that the resulting file works
|
||||
./test/results/test22-aarch64-binary \
|
||||
-f test/common_x86/ELF-i386.hex2\
|
||||
-f test/test22/test.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture x86 \
|
||||
--BaseAddress 0x8048000 \
|
||||
-o test/test22/proof || exit 7
|
||||
out=$(sha256_check test/test22/proof.answer)
|
||||
[ "$out" = "test/test22/proof: OK" ] || exit 8
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,78 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
./bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f functions/file_print.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f functions/match.c \
|
||||
-f functions/in_set.c \
|
||||
-f functions/numerate_number.c \
|
||||
-f functions/string.c \
|
||||
-f test/test23/M1-macro.c \
|
||||
--debug \
|
||||
-o test/test23/M1-macro.M1 || exit 1
|
||||
|
||||
# Build debug footer
|
||||
blood-elf --64 -f test/test23/M1-macro.M1 \
|
||||
-o test/test23/M1-macro-footer.M1 || exit 2
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test23/M1-macro.M1 \
|
||||
-f test/test23/M1-macro-footer.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test23/M1-macro.hex2 || exit 3
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64-debug.hex2 \
|
||||
-f test/test23/M1-macro.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test23-aarch64-binary \
|
||||
--exec_enable || exit 4
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test23-aarch64-binary --version 2>&1 )
|
||||
[ 0 = $? ] || exit 5
|
||||
[ "$out" = "M1 0.3" ] || exit 6
|
||||
|
||||
# Verify that the resulting file works
|
||||
./test/results/test23-aarch64-binary -f \
|
||||
test/common_x86/x86_defs.M1 \
|
||||
-f test/common_x86/libc-core.M1 \
|
||||
-f test/test21/test.M1 \
|
||||
--LittleEndian \
|
||||
--architecture x86 \
|
||||
-o test/test23/proof || exit 7
|
||||
|
||||
. ./sha256.sh
|
||||
out=$(sha256_check test/test23/proof.answer)
|
||||
[ "$out" = "test/test23/proof: OK" ] || exit 8
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,63 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
./bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f functions/file_print.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f test/common_aarch64/functions/uname.c \
|
||||
-f functions/match.c \
|
||||
-f test/test24/get_machine.c \
|
||||
--debug \
|
||||
-o test/test24/get_machine.M1 || exit 1
|
||||
|
||||
# Build debug footer
|
||||
blood-elf --64 -f test/test24/get_machine.M1 \
|
||||
-o test/test24/get_machine-footer.M1 || exit 2
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test24/get_machine.M1 \
|
||||
-f test/test24/get_machine-footer.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test24/get_machine.hex2 || exit 3
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64-debug.hex2 \
|
||||
-f test/test24/get_machine.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test24-aarch64-binary \
|
||||
--exec_enable || exit 4
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test24-aarch64-binary ${GET_MACHINE_FLAGS} 2>&1 )
|
||||
[ 0 = $? ] || exit 5
|
||||
[ "$out" = "aarch64" ] || exit 6
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,69 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
./bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f functions/file_print.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f functions/match.c \
|
||||
-f functions/in_set.c \
|
||||
-f functions/numerate_number.c \
|
||||
-f test/common_aarch64/functions/fork.c \
|
||||
-f test/common_aarch64/functions/execve.c \
|
||||
-f test/test25/kaem.c \
|
||||
--debug \
|
||||
-o test/test25/kaem.M1 || exit 1
|
||||
|
||||
# Build debug footer
|
||||
blood-elf --64 -f test/test25/kaem.M1 \
|
||||
-o test/test25/kaem-footer.M1 || exit 2
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test25/kaem.M1 \
|
||||
-f test/test25/kaem-footer.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test25/kaem.hex2 || exit 3
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64-debug.hex2 \
|
||||
-f test/test25/kaem.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test25-aarch64-binary \
|
||||
--exec_enable || exit 4
|
||||
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test25-aarch64-binary --version 2>&1 )
|
||||
[ 0 = $? ] || exit 5
|
||||
[ "$out" = "kaem version 0.1" ] || exit 6
|
||||
|
||||
# Verify that the resulting file works
|
||||
out=$(./test/results/test25-aarch64-binary --file test/test25/kaem.run)
|
||||
[ "$out" = "hello world" ] || exit 7
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,72 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -x
|
||||
# Build the test
|
||||
./bin/M2-Planet --architecture aarch64 -f test/test26/lisp.h \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f functions/calloc.c \
|
||||
-f functions/in_set.c \
|
||||
-f test/common_aarch64/functions/file.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f functions/numerate_number.c \
|
||||
-f functions/match.c \
|
||||
-f functions/file_print.c \
|
||||
-f test/test26/lisp.c \
|
||||
-f test/test26/lisp_cell.c \
|
||||
-f test/test26/lisp_eval.c \
|
||||
-f test/test26/lisp_print.c \
|
||||
-f test/test26/lisp_read.c \
|
||||
--debug \
|
||||
-o test/test26/lisp.M1 || exit 1
|
||||
|
||||
# Build debug footer
|
||||
blood-elf --64 -f test/test26/lisp.M1 \
|
||||
-o test/test26/lisp-footer.M1 || exit 2
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test26/lisp.M1 \
|
||||
-f test/test26/lisp-footer.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test26/lisp.hex2 || exit 3
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64-debug.hex2 \
|
||||
-f test/test26/lisp.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test26-aarch64-binary \
|
||||
--exec_enable || exit 4
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
# Verify that the compiled program returns the correct result
|
||||
out=$(./test/results/test26-aarch64-binary --version 2>&1 )
|
||||
[ 0 = $? ] || exit 5
|
||||
[ "$out" = "Slow_Lisp 0.1" ] || exit 6
|
||||
|
||||
# Verify that the resulting file works
|
||||
out=$(./test/results/test26-aarch64-binary --file test/test26/test.scm)
|
||||
[ "$out" = "42" ] || exit 7
|
||||
fi
|
||||
exit 0
|
|
@ -0,0 +1,55 @@
|
|||
#! /bin/sh
|
||||
## Copyright (C) 2017 Jeremiah Orians
|
||||
## Copyright (C) 2020 deesix <deesix@tuta.io>
|
||||
## This file is part of M2-Planet.
|
||||
##
|
||||
## M2-Planet is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
## the Free Software Foundation, either version 3 of the License, or
|
||||
## (at your option) any later version.
|
||||
##
|
||||
## M2-Planet is distributed in the hope that it will be useful,
|
||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
## GNU General Public License for more details.
|
||||
##
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
set -ex
|
||||
# Build the test
|
||||
bin/M2-Planet --architecture aarch64 \
|
||||
-f test/common_aarch64/functions/putchar.c \
|
||||
-f test/common_aarch64/functions/getchar.c \
|
||||
-f test/common_aarch64/functions/exit.c \
|
||||
-f test/common_aarch64/functions/malloc.c \
|
||||
-f test/test99/cc500.c \
|
||||
-o test/test99/cc0.M1 || exit 1
|
||||
|
||||
# Macro assemble with libc written in M1-Macro
|
||||
M1 -f test/common_aarch64/aarch64_defs.M1 \
|
||||
-f test/common_aarch64/libc-core.M1 \
|
||||
-f test/test99/cc0.M1 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
-o test/test99/cc0.hex2 || exit 2
|
||||
|
||||
# Resolve all linkages
|
||||
hex2 -f test/common_aarch64/ELF-aarch64.hex2 \
|
||||
-f test/test99/cc0.hex2 \
|
||||
--LittleEndian \
|
||||
--architecture aarch64 \
|
||||
--BaseAddress 0x400000 \
|
||||
-o test/results/test99-aarch64-binary \
|
||||
--exec_enable || exit 3
|
||||
|
||||
# Ensure binary works if host machine supports test
|
||||
if [ "$(get_machine ${GET_MACHINE_FLAGS})" = "aarch64" ]
|
||||
then
|
||||
. ./sha256.sh
|
||||
# Verify that the compiled program can compile itself
|
||||
./test/results/test99-aarch64-binary < test/test99/cc500.c >| test/test99/cc1 || exit 4
|
||||
out=$(sha256_check test/test99/proof0.answer)
|
||||
[ "$out" = "test/test99/cc1: OK" ] || exit 5
|
||||
fi
|
||||
exit 0
|
Loading…
Reference in New Issue