libgpuverify

Signature verification on GPUs (WiP)
Log | Files | Refs | README | LICENSE

commit 2ed17292b5a023671cd688a685e60c60c22b45ce
parent 76b274ec0c4dcd417b394c54115694d8e05de703
Author: Cedric <cedric.zwahlen@students.bfh.ch>
Date:   Sun, 24 Dec 2023 23:59:19 +0100

Fix montgomery

Diffstat:
Msource/montgomery.c | 34++++++++++------------------------
Msource/montmodmult.c | 15++++++++++++++-
Msource/util.c | 2+-
Mxcode/lib-gpu-generate/msgsig.txt | 4++--
Mxcode/lib-gpu-generate/publickey.txt | 4++--
Mxcode/lib-gpu-verify.xcodeproj/project.xcworkspace/xcuserdata/cedriczwahlen.xcuserdatad/UserInterfaceState.xcuserstate | 0
Mxcode/lib-gpu-verify.xcodeproj/xcuserdata/cedriczwahlen.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist | 381++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------
7 files changed, 350 insertions(+), 90 deletions(-)

diff --git a/source/montgomery.c b/source/montgomery.c @@ -25,7 +25,7 @@ int mult(gpu_register p[2], gpu_register x, gpu_register y) __int128_t t = (__int128_t)x * (__int128_t)y; - p[1] = (gpu_register)(t >> 64); + p[1] = (gpu_register)(t >> BITS_PER_DIGIT); p[0] = (gpu_register)t; return 0; @@ -279,17 +279,6 @@ void equal( gpu_register *a, gpu_register *b, size_t ndigits) } } -/* -void erase_above( gpu_register *a, size_t n) -{ - - for (int i = n-1; i >= (n / 2); i--) - { - a[i] = 0; - } - -} -*/ void erase_all( gpu_register *a, size_t n) { @@ -311,16 +300,7 @@ void shift_right(gpu_register *r, int n) { } } -/* -int is_greater(gpu_register *r, int n) { - - for (int i = n - 1; i >= 0; i--) { - if (r[i] != 0) - return i; - } - return 0; -} -*/ + // 1 if r > l ; -1 if r < l; == 0 int compare(gpu_register *r, gpu_register *l, int n) { @@ -355,7 +335,10 @@ void montMul( gpu_register *ret, multiply(tmp_3,tmp_2,n,R); - add(tmp_2,tmp_1,tmp_3,R*2); + gpu_register i = add(tmp_2,tmp_1,tmp_3,R*2); // MARK: something gets lost in the carry + + if (i != 0) printf("non-zero add\n"); + shift_right(tmp_2, R); if (compare(tmp_2, n, R) >= 0) { @@ -380,7 +363,10 @@ void montSqr( gpu_register *ret, multiply(tmp_3,tmp_2,n,R); - add(tmp_2,tmp_1,tmp_3,R*2); + gpu_register i = add(tmp_2,tmp_1,tmp_3,R*2); + + if (i != 0) printf("non-zero add\n"); + shift_right(tmp_2, R); if (compare(tmp_2, n, R) >= 0) { diff --git a/source/montmodmult.c b/source/montmodmult.c @@ -15,7 +15,7 @@ static unsigned long len_in_bytes = 0; #define ORDER -1 // I think we need to do this, because we want to write it in the 'wrong' way #define END 0 -#define BIT_LENGTH 2048 +#define BIT_LENGTH (2048) #define BITS 64 @@ -408,7 +408,20 @@ unsigned long modmult_opencl_results(struct gpu_info *info, struct gpu_state_alt gmp_printf ("ret in decimal: %Zd\n", a); // test reference + /* + mpz_t xyz, temp, moduloo; + mpz_init(xyz); + mpz_init(temp); + mpz_init(moduloo); + mpz_import(xyz, len, ORDER, sizeof(gpu_register), END, 0, s_buf); + mpz_import(moduloo, len, ORDER, sizeof(gpu_register), END, 0, mod_buf); + + mpz_mul(xyz,xyz,xyz); + mpz_mod(xyz,xyz,mod); + + gmp_printf ("product: %Zd\n", xyz); + */ mpz_t mmm; mpz_init(mmm); diff --git a/source/util.c b/source/util.c @@ -30,7 +30,7 @@ unsigned long number_of_pairs(void) { close(msfile); - return n_min; + return n_min == 0 ? 1 : n_min; } diff --git a/xcode/lib-gpu-generate/msgsig.txt b/xcode/lib-gpu-generate/msgsig.txt @@ -1,2 +1,2 @@ -5806A25CC6B1AA63 -43B7F97A9BF895F907C450CF658ADCC35223B8B3E5F91C933BA71762E7F2A49EBF7AD9B8EC6A9B87CCE33B3AD20DBB20E70943C887409EF515CA4BF6B2C1CE10F7CEBBD0BD1146BE27765CBC51409B07FEB7D0CAE473D797C9A092E5B9D64B136CC7BE53DE1CD4F84D7FBCFE75054A9B51F0DF7808E58A01480B0650CFB6244348782AE96604BD909760E65343133C4B7A0CF4E99DEA76C78991F179E9A08B139B28099BE0B55328500F54C71348F4F0E62471E645824BD3CC7781DA840E354DAEA062B72E2E64A9128AA82E973DF2B69B6FFDB954130F5625B45D80776B1FD21D1EE1F5898B55004EC4688A44F0505D0E08FB5D4F8484E2FE700B18D640DAC5 +672CF1AA50D19C0B +041605674572DEFC diff --git a/xcode/lib-gpu-generate/publickey.txt b/xcode/lib-gpu-generate/publickey.txt @@ -1,3 +1,3 @@ -00B70364447990A82B5148BD0D380753E8AECD553E7FD63148A97C0184D45FB6D4152781A31E424DF5514D1C437C63675C349AD0E364DB6E040F573CDA4A4E00D6497224FC2247CB66FDDF1FA260764122DEC624AB76458BB20FA10A5941E2DDD245FFB3BF58431AB4C3D998E9B014370CDD67D253AF62644312CABF16D16AA2F37A44A92902684729EC611D33CC3A612D684C3AE220BFDC732D20C06E349497C44F6F67B51FFAE5CC1802A3BF86093C9663BB5BBF4A8B65B17BE07B247DED2A1602698506C0DC5E2EB2C150DC6D4847412768D1F3D3398710E74BD2B27264EE411B99CCB84F7EF7BF6E1F3E4EBAA839A32720D23271C0429662A05BB61D999397 -010001 +BDFD5533442211 +34 0 diff --git a/xcode/lib-gpu-verify.xcodeproj/project.xcworkspace/xcuserdata/cedriczwahlen.xcuserdatad/UserInterfaceState.xcuserstate b/xcode/lib-gpu-verify.xcodeproj/project.xcworkspace/xcuserdata/cedriczwahlen.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ. diff --git a/xcode/lib-gpu-verify.xcodeproj/xcuserdata/cedriczwahlen.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/xcode/lib-gpu-verify.xcodeproj/xcuserdata/cedriczwahlen.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -3227,8 +3227,8 @@ filePath = "../source/montmodmult.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "588" - endingLineNumber = "588" + startingLineNumber = "601" + endingLineNumber = "601" landmarkName = "mont_modmult_tests()" landmarkType = "9"> <Locations> @@ -3291,8 +3291,8 @@ filePath = "../source/montmodmult.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "638" - endingLineNumber = "638" + startingLineNumber = "651" + endingLineNumber = "651" landmarkName = "mont_modmult_tests()" landmarkType = "9"> <Locations> @@ -3478,8 +3478,8 @@ filePath = "../source/montmodmult.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "436" - endingLineNumber = "436" + startingLineNumber = "449" + endingLineNumber = "449" landmarkName = "modmult_opencl_results(info, state, timed, msg_buf, r_1_buf, n_buf, s_buf, mod_buf, n)" landmarkType = "9"> <Locations> @@ -4004,8 +4004,8 @@ filePath = "../source/montmodmult.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "562" - endingLineNumber = "562" + startingLineNumber = "575" + endingLineNumber = "575" landmarkName = "modmult_gpu_execute(info, state, x_buf, m_buf, r_1_buf, n_buf, ni_buf, msg_buf, exp_buf, mod_buf, s_buf, pks, n)" landmarkType = "9"> <Locations> @@ -4827,14 +4827,14 @@ BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> <BreakpointContent uuid = "B83D34D8-9764-4755-9D60-43B2D148AC0D" - shouldBeEnabled = "Yes" + shouldBeEnabled = "No" ignoreCount = "0" continueAfterRunningActions = "No" filePath = "../source/montmodmult.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "549" - endingLineNumber = "549" + startingLineNumber = "562" + endingLineNumber = "562" landmarkName = "modmult_gpu_execute(info, state, x_buf, m_buf, r_1_buf, n_buf, ni_buf, msg_buf, exp_buf, mod_buf, s_buf, pks, n)" landmarkType = "9"> <Locations> @@ -4898,6 +4898,21 @@ endingLineNumber = "551" offsetFromSymbolStart = "399"> </Location> + <Location + uuid = "B83D34D8-9764-4755-9D60-43B2D148AC0D - 30fdc229490fe6c6" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "modmult_gpu_execute" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montmodmult.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "549" + endingLineNumber = "549" + offsetFromSymbolStart = "409"> + </Location> </Locations> </BreakpointContent> </BreakpointProxy> @@ -4911,8 +4926,8 @@ filePath = "../source/montgomery.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "404" - endingLineNumber = "404" + startingLineNumber = "390" + endingLineNumber = "390" landmarkName = "mont(x, m, res, n, ni, exp, tmp_1, tmp_2, tmp_3, pks)" landmarkType = "9"> </BreakpointContent> @@ -4927,8 +4942,8 @@ filePath = "../source/montgomery.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "375" - endingLineNumber = "375" + startingLineNumber = "358" + endingLineNumber = "358" landmarkName = "montSqr(ret, a, ni, n, tmp_1, tmp_2, tmp_3)" landmarkType = "9"> <Locations> @@ -5036,8 +5051,8 @@ filePath = "../source/montgomery.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "383" - endingLineNumber = "383" + startingLineNumber = "366" + endingLineNumber = "366" landmarkName = "montSqr(ret, a, ni, n, tmp_1, tmp_2, tmp_3)" landmarkType = "9"> <Locations> @@ -5176,6 +5191,21 @@ endingLineNumber = "386" offsetFromSymbolStart = "116"> </Location> + <Location + uuid = "20C58A0F-A986-4200-81BE-6650A55F5F80 - 50935169520bcb85" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "montSqr" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "383" + endingLineNumber = "383" + offsetFromSymbolStart = "98"> + </Location> </Locations> </BreakpointContent> </BreakpointProxy> @@ -5189,8 +5219,8 @@ filePath = "../source/montgomery.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "446" - endingLineNumber = "446" + startingLineNumber = "432" + endingLineNumber = "432" landmarkName = "mont(x, m, res, n, ni, exp, tmp_1, tmp_2, tmp_3, pks)" landmarkType = "9"> <Locations> @@ -5284,6 +5314,51 @@ endingLineNumber = "446" offsetFromSymbolStart = "443"> </Location> + <Location + uuid = "9B34856F-65B7-49E7-9879-CE2E7291BD44 - 165c509e6f753962" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "449" + endingLineNumber = "449" + offsetFromSymbolStart = "387"> + </Location> + <Location + uuid = "9B34856F-65B7-49E7-9879-CE2E7291BD44 - 165c509e6f75240e" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "429" + endingLineNumber = "429" + offsetFromSymbolStart = "387"> + </Location> + <Location + uuid = "9B34856F-65B7-49E7-9879-CE2E7291BD44 - 165c509e6f75246b" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "426" + endingLineNumber = "426" + offsetFromSymbolStart = "443"> + </Location> </Locations> </BreakpointContent> </BreakpointProxy> @@ -5291,14 +5366,14 @@ BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> <BreakpointContent uuid = "52864517-51A6-4A94-BBCD-2CFE742F9567" - shouldBeEnabled = "No" + shouldBeEnabled = "Yes" ignoreCount = "0" continueAfterRunningActions = "No" filePath = "../source/montgomery.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "425" - endingLineNumber = "425" + startingLineNumber = "411" + endingLineNumber = "411" landmarkName = "mont(x, m, res, n, ni, exp, tmp_1, tmp_2, tmp_3, pks)" landmarkType = "9"> <Locations> @@ -5377,6 +5452,66 @@ endingLineNumber = "483" offsetFromSymbolStart = "197"> </Location> + <Location + uuid = "52864517-51A6-4A94-BBCD-2CFE742F9567 - 165c509e6f75258a" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "425" + endingLineNumber = "425" + offsetFromSymbolStart = "197"> + </Location> + <Location + uuid = "52864517-51A6-4A94-BBCD-2CFE742F9567 - 165c509e6f752429" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "428" + endingLineNumber = "428" + offsetFromSymbolStart = "139"> + </Location> + <Location + uuid = "52864517-51A6-4A94-BBCD-2CFE742F9567 - 165c509e6f7523d5" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "408" + endingLineNumber = "408" + offsetFromSymbolStart = "139"> + </Location> + <Location + uuid = "52864517-51A6-4A94-BBCD-2CFE742F9567 - 165c509e6f752336" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "405" + endingLineNumber = "405" + offsetFromSymbolStart = "197"> + </Location> </Locations> </BreakpointContent> </BreakpointProxy> @@ -5390,8 +5525,8 @@ filePath = "../source/montgomery.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "429" - endingLineNumber = "429" + startingLineNumber = "415" + endingLineNumber = "415" landmarkName = "mont(x, m, res, n, ni, exp, tmp_1, tmp_2, tmp_3, pks)" landmarkType = "9"> </BreakpointContent> @@ -5399,22 +5534,6 @@ <BreakpointProxy BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> <BreakpointContent - uuid = "441245F5-9A8B-4465-AF4F-FCEAB744C418" - shouldBeEnabled = "No" - ignoreCount = "0" - continueAfterRunningActions = "No" - filePath = "../source/montgomery.c" - startingColumnNumber = "9223372036854775807" - endingColumnNumber = "9223372036854775807" - startingLineNumber = "315" - endingLineNumber = "315" - landmarkName = "unknown" - landmarkType = "0"> - </BreakpointContent> - </BreakpointProxy> - <BreakpointProxy - BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> - <BreakpointContent uuid = "C68E232F-2EC2-4E18-96E0-32EF8A2C8EEE" shouldBeEnabled = "No" ignoreCount = "0" @@ -5431,22 +5550,6 @@ <BreakpointProxy BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> <BreakpointContent - uuid = "EB17C7BB-5771-42E6-8EF0-292F464916B4" - shouldBeEnabled = "No" - ignoreCount = "0" - continueAfterRunningActions = "No" - filePath = "../source/montgomery.c" - startingColumnNumber = "9223372036854775807" - endingColumnNumber = "9223372036854775807" - startingLineNumber = "317" - endingLineNumber = "317" - landmarkName = "unknown" - landmarkType = "0"> - </BreakpointContent> - </BreakpointProxy> - <BreakpointProxy - BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> - <BreakpointContent uuid = "072A6EF8-4BE2-4C21-9B90-1CA1F931C0CB" shouldBeEnabled = "No" ignoreCount = "0" @@ -5454,8 +5557,8 @@ filePath = "../source/montgomery.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "306" - endingLineNumber = "306" + startingLineNumber = "295" + endingLineNumber = "295" landmarkName = "shift_right(r, n)" landmarkType = "9"> <Locations> @@ -5502,8 +5605,8 @@ filePath = "../source/montgomery.c" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "313" - endingLineNumber = "313" + startingLineNumber = "302" + endingLineNumber = "302" landmarkName = "shift_right(r, n)" landmarkType = "9"> <Locations> @@ -5572,5 +5675,163 @@ landmarkType = "9"> </BreakpointContent> </BreakpointProxy> + <BreakpointProxy + BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> + <BreakpointContent + uuid = "7D195677-3234-4E14-8492-63D6AB1610DB" + shouldBeEnabled = "No" + ignoreCount = "0" + continueAfterRunningActions = "No" + filePath = "../source/montmodmult.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "84" + endingLineNumber = "84" + landmarkName = "montmodmult_pairs_from_files(x_buf, m_buf, r_1_buf, n_buf, ni_buf, msg_buf, exp_buf, mod_buf, s_buf, pks, n)" + landmarkType = "9"> + </BreakpointContent> + </BreakpointProxy> + <BreakpointProxy + BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> + <BreakpointContent + uuid = "492E40F5-2358-4900-9CA0-C0C918C82FE9" + shouldBeEnabled = "No" + ignoreCount = "0" + continueAfterRunningActions = "No" + filePath = "../source/montmodmult.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "644" + endingLineNumber = "644" + landmarkName = "mont_modmult_tests()" + landmarkType = "9"> + </BreakpointContent> + </BreakpointProxy> + <BreakpointProxy + BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> + <BreakpointContent + uuid = "19319ECA-3B5A-4A8C-B9C4-20C8F6B6F6E0" + shouldBeEnabled = "No" + ignoreCount = "0" + continueAfterRunningActions = "No" + filePath = "../source/montmodmult.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "534" + endingLineNumber = "534" + landmarkName = "modmult_gpu_execute(info, state, x_buf, m_buf, r_1_buf, n_buf, ni_buf, msg_buf, exp_buf, mod_buf, s_buf, pks, n)" + landmarkType = "9"> + </BreakpointContent> + </BreakpointProxy> + <BreakpointProxy + BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> + <BreakpointContent + uuid = "397421FC-D9A4-49C8-804C-DB4EBEB70126" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + filePath = "../source/montmodmult.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "605" + endingLineNumber = "605" + landmarkName = "mont_modmult_tests()" + landmarkType = "9"> + </BreakpointContent> + </BreakpointProxy> + <BreakpointProxy + BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> + <BreakpointContent + uuid = "D921EAA7-1625-4630-987E-87E5AA607C82" + shouldBeEnabled = "No" + ignoreCount = "0" + continueAfterRunningActions = "No" + filePath = "../source/util.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "33" + endingLineNumber = "33" + landmarkName = "number_of_pairs()" + landmarkType = "9"> + </BreakpointContent> + </BreakpointProxy> + <BreakpointProxy + BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> + <BreakpointContent + uuid = "CAF542F7-3454-4963-BF63-FDA8B5A1128C" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + filePath = "../source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "420" + endingLineNumber = "420" + landmarkName = "mont(x, m, res, n, ni, exp, tmp_1, tmp_2, tmp_3, pks)" + landmarkType = "9"> + <Locations> + <Location + uuid = "CAF542F7-3454-4963-BF63-FDA8B5A1128C - 165c509e6f752773" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "434" + endingLineNumber = "434" + offsetFromSymbolStart = "323"> + </Location> + <Location + uuid = "CAF542F7-3454-4963-BF63-FDA8B5A1128C - 165c509e6f752716" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "437" + endingLineNumber = "437" + offsetFromSymbolStart = "267"> + </Location> + <Location + uuid = "CAF542F7-3454-4963-BF63-FDA8B5A1128C - 165c509e6f752282" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "417" + endingLineNumber = "417" + offsetFromSymbolStart = "267"> + </Location> + <Location + uuid = "CAF542F7-3454-4963-BF63-FDA8B5A1128C - 165c509e6f75221f" + shouldBeEnabled = "Yes" + ignoreCount = "0" + continueAfterRunningActions = "No" + symbolName = "mont" + moduleName = "lib-gpu-verify" + usesParentBreakpointCondition = "Yes" + urlString = "file:///Users/cedriczwahlen/libgpuverify/source/montgomery.c" + startingColumnNumber = "9223372036854775807" + endingColumnNumber = "9223372036854775807" + startingLineNumber = "414" + endingLineNumber = "414" + offsetFromSymbolStart = "323"> + </Location> + </Locations> + </BreakpointContent> + </BreakpointProxy> </Breakpoints> </Bucket>