diff --git a/src/sfizz/OpcodeCleanup.cpp b/src/sfizz/OpcodeCleanup.cpp index 83b8aeb8..d5e41a63 100644 --- a/src/sfizz/OpcodeCleanup.cpp +++ b/src/sfizz/OpcodeCleanup.cpp @@ -1,4 +1,4 @@ -/* Generated by re2c 1.3 on Fri May 15 08:07:56 2020 */ +/* Generated by re2c 1.3 on Fri May 15 08:18:09 2020 */ #line 1 "src/sfizz/OpcodeCleanup.re" /* -*- mode: c++; -*- */ // SPDX-License-Identifier: BSD-2-Clause @@ -41,10 +41,12 @@ static std::string cleanUpOpcodeName(absl::string_view rawOpcode, OpcodeScope sc //-------------------------------------------------------------------------- + if (scope == kOpcodeScopeRegion) { + YYCURSOR = opcode.c_str(); -#line 48 "src/sfizz/OpcodeCleanup.cpp" +#line 50 "src/sfizz/OpcodeCleanup.cpp" { char yych; yych = *YYCURSOR; @@ -60,11 +62,11 @@ static std::string cleanUpOpcodeName(absl::string_view rawOpcode, OpcodeScope sc yy2: ++YYCURSOR; yy3: -#line 57 "src/sfizz/OpcodeCleanup.re" +#line 59 "src/sfizz/OpcodeCleanup.re" { - goto end_generic; + goto end_region_oncc; } -#line 68 "src/sfizz/OpcodeCleanup.cpp" +#line 70 "src/sfizz/OpcodeCleanup.cpp" yy4: yych = *(YYMARKER = ++YYCURSOR); if (yych <= 0x00) goto yy3; @@ -148,19 +150,21 @@ yy15: yypmatch[1] = YYCURSOR; yypmatch[3] = yyt2 - 3; yypmatch[5] = YYCURSOR - 1; -#line 52 "src/sfizz/OpcodeCleanup.re" +#line 54 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat(group(1), "_oncc", group(2)); - goto end_generic; + goto end_region_oncc; } -#line 157 "src/sfizz/OpcodeCleanup.cpp" +#line 159 "src/sfizz/OpcodeCleanup.cpp" } -#line 61 "src/sfizz/OpcodeCleanup.re" +#line 63 "src/sfizz/OpcodeCleanup.re" -end_generic: +end_region_oncc: /* end */; + } // scope == kOpcodeScopeRegion + //-------------------------------------------------------------------------- if (scope == kOpcodeScopeRegion) { @@ -168,7 +172,7 @@ end_generic: YYCURSOR = opcode.c_str(); -#line 172 "src/sfizz/OpcodeCleanup.cpp" +#line 176 "src/sfizz/OpcodeCleanup.cpp" { char yych; yych = *YYCURSOR; @@ -208,11 +212,11 @@ end_generic: yy19: ++YYCURSOR; yy20: -#line 158 "src/sfizz/OpcodeCleanup.re" +#line 162 "src/sfizz/OpcodeCleanup.re" { goto end_region; } -#line 216 "src/sfizz/OpcodeCleanup.cpp" +#line 220 "src/sfizz/OpcodeCleanup.cpp" yy21: yych = *(YYMARKER = ++YYCURSOR); switch (yych) { @@ -752,12 +756,12 @@ yy96: yypmatch[0] = yyt1 - 4; yypmatch[1] = YYCURSOR; yypmatch[3] = YYCURSOR - 1; -#line 140 "src/sfizz/OpcodeCleanup.re" +#line 144 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("fil1_", group(1)); goto end_region; } -#line 761 "src/sfizz/OpcodeCleanup.cpp" +#line 765 "src/sfizz/OpcodeCleanup.cpp" yy98: yych = *++YYCURSOR; yy99: @@ -776,12 +780,12 @@ yy101: yypmatch[2] = yyt3; yypmatch[3] = yyt2; yypmatch[1] = YYCURSOR; -#line 122 "src/sfizz/OpcodeCleanup.re" +#line 126 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("volume", group(1)); goto end_region; } -#line 785 "src/sfizz/OpcodeCleanup.cpp" +#line 789 "src/sfizz/OpcodeCleanup.cpp" yy103: yych = *++YYCURSOR; if (yych <= 0x00) { @@ -866,12 +870,12 @@ yy115: yypmatch[2] = yyt3; yypmatch[3] = yyt2; yypmatch[1] = YYCURSOR; -#line 126 "src/sfizz/OpcodeCleanup.re" +#line 130 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("pitch", group(1)); goto end_region; } -#line 875 "src/sfizz/OpcodeCleanup.cpp" +#line 879 "src/sfizz/OpcodeCleanup.cpp" yy117: yych = *++YYCURSOR; if (yych <= 0x00) { @@ -1011,12 +1015,12 @@ yy137: yypmatch[0] = yyt1 - 3; yypmatch[1] = YYCURSOR; yypmatch[3] = YYCURSOR - 1; -#line 100 "src/sfizz/OpcodeCleanup.re" +#line 104 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("off_", group(1)); goto end_region; } -#line 1020 "src/sfizz/OpcodeCleanup.cpp" +#line 1024 "src/sfizz/OpcodeCleanup.cpp" yy139: yych = *++YYCURSOR; switch (yych) { @@ -1102,12 +1106,12 @@ yy151: yypmatch[0] = yyt1 - 4; yypmatch[1] = YYCURSOR; yypmatch[3] = YYCURSOR - 1; -#line 104 "src/sfizz/OpcodeCleanup.re" +#line 108 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("bend_", group(1)); goto end_region; } -#line 1111 "src/sfizz/OpcodeCleanup.cpp" +#line 1115 "src/sfizz/OpcodeCleanup.cpp" yy153: ++YYCURSOR; yynmatch = 2; @@ -1115,12 +1119,12 @@ yy153: yypmatch[2] = yyt3; yypmatch[3] = yyt2; yypmatch[1] = YYCURSOR; -#line 144 "src/sfizz/OpcodeCleanup.re" +#line 148 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("cutoff1", group(1)); goto end_region; } -#line 1124 "src/sfizz/OpcodeCleanup.cpp" +#line 1128 "src/sfizz/OpcodeCleanup.cpp" yy155: yych = *++YYCURSOR; if (yych <= 0x00) { @@ -1313,12 +1317,12 @@ yy184: yynmatch = 1; yypmatch[0] = YYCURSOR - 8; yypmatch[1] = YYCURSOR; -#line 108 "src/sfizz/OpcodeCleanup.re" +#line 112 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("fil1_type"); goto end_region; } -#line 1322 "src/sfizz/OpcodeCleanup.cpp" +#line 1326 "src/sfizz/OpcodeCleanup.cpp" yy186: yych = *++YYCURSOR; switch (yych) { @@ -1367,12 +1371,12 @@ yy191: yypmatch[0] = yyt1 - 4; yypmatch[1] = YYCURSOR; yypmatch[3] = YYCURSOR - 1; -#line 96 "src/sfizz/OpcodeCleanup.re" +#line 100 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("loop_", group(1)); goto end_region; } -#line 1376 "src/sfizz/OpcodeCleanup.cpp" +#line 1380 "src/sfizz/OpcodeCleanup.cpp" yy193: yych = *++YYCURSOR; switch (yych) { @@ -1490,12 +1494,12 @@ yy210: yypmatch[0] = yyt1 - 3; yypmatch[1] = YYCURSOR; yypmatch[3] = YYCURSOR - 5; -#line 112 "src/sfizz/OpcodeCleanup.re" +#line 116 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("fil", group(1), "_type"); goto end_region; } -#line 1499 "src/sfizz/OpcodeCleanup.cpp" +#line 1503 "src/sfizz/OpcodeCleanup.cpp" yy212: yych = *++YYCURSOR; switch (yych) { @@ -1537,12 +1541,12 @@ yy217: yypmatch[2] = yyt1 - 4; yypmatch[3] = yyt1 - 2; yypmatch[5] = YYCURSOR - 1; -#line 131 "src/sfizz/OpcodeCleanup.re" +#line 135 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("start_", group(1), "cc", group(2)); goto end_region; } -#line 1546 "src/sfizz/OpcodeCleanup.cpp" +#line 1550 "src/sfizz/OpcodeCleanup.cpp" yy219: yych = *++YYCURSOR; switch (yych) { @@ -1642,12 +1646,12 @@ yy231: yypmatch[3] = yyt2 - 1; yypmatch[5] = yyt3 - 2; yypmatch[7] = YYCURSOR - 1; -#line 87 "src/sfizz/OpcodeCleanup.re" +#line 91 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat(group(1), "_", group(2), "_oncc", group(3)); goto end_region; } -#line 1651 "src/sfizz/OpcodeCleanup.cpp" +#line 1655 "src/sfizz/OpcodeCleanup.cpp" yy233: ++YYCURSOR; yynmatch = 3; @@ -1657,12 +1661,12 @@ yy233: yypmatch[2] = yyt1 - 8; yypmatch[3] = yyt1 - 6; yypmatch[5] = YYCURSOR - 1; -#line 153 "src/sfizz/OpcodeCleanup.re" +#line 157 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat(group(1), "hdcc", group(2)); goto end_region; } -#line 1666 "src/sfizz/OpcodeCleanup.cpp" +#line 1670 "src/sfizz/OpcodeCleanup.cpp" yy235: yych = *++YYCURSOR; switch (yych) { @@ -1678,12 +1682,12 @@ yy236: yypmatch[1] = YYCURSOR; yypmatch[3] = yyt2 - 1; yypmatch[5] = YYCURSOR - 1; -#line 91 "src/sfizz/OpcodeCleanup.re" +#line 95 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat(group(1), "_", group(2), "1"); goto end_region; } -#line 1687 "src/sfizz/OpcodeCleanup.cpp" +#line 1691 "src/sfizz/OpcodeCleanup.cpp" yy238: yych = *++YYCURSOR; switch (yych) { @@ -1713,12 +1717,12 @@ yy241: yypmatch[2] = yyt3; yypmatch[3] = yyt2; yypmatch[1] = YYCURSOR; -#line 148 "src/sfizz/OpcodeCleanup.re" +#line 152 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("resonance1", group(1)); goto end_region; } -#line 1722 "src/sfizz/OpcodeCleanup.cpp" +#line 1726 "src/sfizz/OpcodeCleanup.cpp" yy243: yych = *++YYCURSOR; if (yych <= 0x00) { @@ -1771,12 +1775,12 @@ yy251: yypmatch[2] = yyt1 - 6; yypmatch[3] = yyt1 - 4; yypmatch[5] = YYCURSOR - 1; -#line 135 "src/sfizz/OpcodeCleanup.re" +#line 139 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat("start_", group(1), "hdcc", group(2)); goto end_region; } -#line 1780 "src/sfizz/OpcodeCleanup.cpp" +#line 1784 "src/sfizz/OpcodeCleanup.cpp" yy253: yych = *++YYCURSOR; switch (yych) { @@ -1874,12 +1878,12 @@ yy263: yypmatch[3] = yyt2 - 1; yypmatch[5] = yyt3 - 2; yypmatch[7] = YYCURSOR - 1; -#line 83 "src/sfizz/OpcodeCleanup.re" +#line 87 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat(group(1), "_", group(2), "_oncc", group(3)); goto end_region; } -#line 1883 "src/sfizz/OpcodeCleanup.cpp" +#line 1887 "src/sfizz/OpcodeCleanup.cpp" yy265: yych = *++YYCURSOR; switch (yych) { @@ -1913,12 +1917,12 @@ yy268: yypmatch[3] = yyt2 - 1; yypmatch[5] = yyt3 - 2; yypmatch[7] = YYCURSOR - 1; -#line 79 "src/sfizz/OpcodeCleanup.re" +#line 83 "src/sfizz/OpcodeCleanup.re" { opcode = absl::StrCat(group(1), "_", group(2), "_oncc", group(3)); goto end_region; } -#line 1922 "src/sfizz/OpcodeCleanup.cpp" +#line 1926 "src/sfizz/OpcodeCleanup.cpp" yy270: yych = *++YYCURSOR; if (yych >= 0x01) goto yy34; @@ -1926,14 +1930,14 @@ yy270: yynmatch = 1; yypmatch[0] = YYCURSOR - 16; yypmatch[1] = YYCURSOR; -#line 117 "src/sfizz/OpcodeCleanup.re" +#line 121 "src/sfizz/OpcodeCleanup.re" { opcode = "group"; goto end_region; } -#line 1935 "src/sfizz/OpcodeCleanup.cpp" +#line 1939 "src/sfizz/OpcodeCleanup.cpp" } -#line 162 "src/sfizz/OpcodeCleanup.re" +#line 166 "src/sfizz/OpcodeCleanup.re" end_region: @@ -1943,6 +1947,142 @@ end_region: //-------------------------------------------------------------------------- + if (scope == kOpcodeScopeControl) { + + YYCURSOR = opcode.c_str(); + + +#line 1956 "src/sfizz/OpcodeCleanup.cpp" +{ + char yych; + yych = *YYCURSOR; + switch (yych) { + case 's': goto yy277; + default: goto yy275; + } +yy275: + ++YYCURSOR; +yy276: +#line 186 "src/sfizz/OpcodeCleanup.re" + { + goto end_control; + } +#line 1971 "src/sfizz/OpcodeCleanup.cpp" +yy277: + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 'e': goto yy278; + default: goto yy276; + } +yy278: + yych = *++YYCURSOR; + switch (yych) { + case 't': goto yy280; + default: goto yy279; + } +yy279: + YYCURSOR = YYMARKER; + goto yy276; +yy280: + yych = *++YYCURSOR; + switch (yych) { + case '_': goto yy281; + default: goto yy279; + } +yy281: + yych = *++YYCURSOR; + switch (yych) { + case 'r': goto yy282; + default: goto yy279; + } +yy282: + yych = *++YYCURSOR; + switch (yych) { + case 'e': goto yy283; + default: goto yy279; + } +yy283: + yych = *++YYCURSOR; + switch (yych) { + case 'a': goto yy284; + default: goto yy279; + } +yy284: + yych = *++YYCURSOR; + switch (yych) { + case 'l': goto yy285; + default: goto yy279; + } +yy285: + yych = *++YYCURSOR; + switch (yych) { + case 'c': goto yy286; + default: goto yy279; + } +yy286: + yych = *++YYCURSOR; + switch (yych) { + case 'c': goto yy287; + default: goto yy279; + } +yy287: + yych = *++YYCURSOR; + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + yyt1 = YYCURSOR; + goto yy288; + default: goto yy279; + } +yy288: + yych = *++YYCURSOR; + switch (yych) { + case 0x00: goto yy290; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy288; + default: goto yy279; + } +yy290: + ++YYCURSOR; + yynmatch = 2; + yypmatch[2] = yyt1; + yypmatch[0] = yyt1 - 10; + yypmatch[1] = YYCURSOR; + yypmatch[3] = YYCURSOR - 1; +#line 181 "src/sfizz/OpcodeCleanup.re" + { + opcode = absl::StrCat("set_hdcc", group(1)); + goto end_control; + } +#line 2074 "src/sfizz/OpcodeCleanup.cpp" +} +#line 190 "src/sfizz/OpcodeCleanup.re" + + +end_control: + /* end */; + + } // scope == kOpcodeScopeControl + + //-------------------------------------------------------------------------- + + #undef YYMAXNMATCH return opcode;