diff options
author | ericvergnaud <eric.vergnaud@wanadoo.fr> | 2024-02-01 19:48:06 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-01 10:48:06 -0800 |
commit | 2b3a2e8c341395e4cb0f76db6ad4f31fb17720cc (patch) | |
tree | cca37d0a307f56b351611fb11e604d347c0ba301 /test/example/c-api-kitchen-sink.c | |
parent | 6c70fcdf246ba5619c75b56e2ffddd8256dfd857 (diff) | |
download | binaryen-2b3a2e8c341395e4cb0f76db6ad4f31fb17720cc.tar.gz binaryen-2b3a2e8c341395e4cb0f76db6ad4f31fb17720cc.tar.bz2 binaryen-2b3a2e8c341395e4cb0f76db6ad4f31fb17720cc.zip |
C API: Use segment names (#6254)
Move from segment indexes to names. This is a breaking change to make the API more
capable and consistent. An effort has been made to reduce the burden on C API users
where possible (specifically, you can avoid providing names and let Binaryen make them
for you, which will basically be numbers that match the indexes from before).
Fixes #6247
Diffstat (limited to 'test/example/c-api-kitchen-sink.c')
-rw-r--r-- | test/example/c-api-kitchen-sink.c | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/test/example/c-api-kitchen-sink.c b/test/example/c-api-kitchen-sink.c index edf8d61f7..d5681097c 100644 --- a/test/example/c-api-kitchen-sink.c +++ b/test/example/c-api-kitchen-sink.c @@ -530,8 +530,9 @@ void test_core() { // Memory. Add it before creating any memory-using instructions. - const char* segments[] = {"hello, world", "I am passive"}; - bool segmentPassive[] = {false, true}; + const char* segmentNames[] = {"0", "1"}; + const char* segmentDatas[] = {"hello, world", "I am passive"}; + bool segmentPassives[] = {false, true}; BinaryenExpressionRef segmentOffsets[] = { BinaryenConst(module, BinaryenLiteralInt32(10)), NULL}; BinaryenIndex segmentSizes[] = {12, 12}; @@ -539,8 +540,9 @@ void test_core() { 1, 256, "mem", - segments, - segmentPassive, + segmentNames, + segmentDatas, + segmentPassives, segmentOffsets, segmentSizes, 2, @@ -2085,9 +2087,10 @@ void test_for_each() { assert(BinaryenGetExportByIndex(module, i) == exps[i]); } - const char* segments[] = {"hello, world", "segment data 2"}; + const char* segmentNames[] = {"0", "1"}; + const char* segmentDatas[] = {"hello, world", "segment data 2"}; const uint32_t expected_offsets[] = {10, 125}; - bool segmentPassive[] = {false, false}; + bool segmentPassives[] = {false, false}; BinaryenIndex segmentSizes[] = {12, 14}; BinaryenExpressionRef segmentOffsets[] = { @@ -2097,8 +2100,9 @@ void test_for_each() { 1, 256, "mem", - segments, - segmentPassive, + segmentNames, + segmentDatas, + segmentPassives, segmentOffsets, segmentSizes, 2, @@ -2113,11 +2117,12 @@ void test_for_each() { for (i = 0; i < BinaryenGetNumMemorySegments(module); i++) { char out[15] = {}; - assert(BinaryenGetMemorySegmentByteOffset(module, i) == + assert(BinaryenGetMemorySegmentByteOffset(module, segmentNames[i]) == expected_offsets[i]); - assert(BinaryenGetMemorySegmentByteLength(module, i) == segmentSizes[i]); - BinaryenCopyMemorySegmentData(module, i, out); - assert(0 == strcmp(segments[i], out)); + assert(BinaryenGetMemorySegmentByteLength(module, segmentNames[i]) == + segmentSizes[i]); + BinaryenCopyMemorySegmentData(module, segmentNames[i], out); + assert(0 == strcmp(segmentDatas[i], out)); } } { |