Skip to content

Commit dfacff1

Browse files
committed
[mlir][emitc] NFC. Fix op's example in the description
1 parent df8e92b commit dfacff1

File tree

1 file changed

+24
-138
lines changed
  • mlir/include/mlir/Dialect/EmitC/IR

1 file changed

+24
-138
lines changed

mlir/include/mlir/Dialect/EmitC/IR/EmitC.td

Lines changed: 24 additions & 138 deletions
Original file line numberDiff line numberDiff line change
@@ -1327,150 +1327,36 @@ def EmitC_SwitchOp : EmitC_Op<"switch", [RecursiveMemoryEffects,
13271327
Example:
13281328

13291329
```mlir
1330-
// Example for i32:
1331-
func.func @emitc_switch_i32() {
1332-
%0 = "emitc.variable"(){value = 1 : i32} : () -> i32
1333-
1334-
emitc.switch %0 : i32
1335-
case 2: {
1336-
%1 = emitc.call_opaque "func_b" () : () -> i32
1337-
emitc.yield
1338-
}
1339-
case 5: {
1340-
%2 = emitc.call_opaque "func_a" () : () -> i32
1341-
emitc.yield
1342-
}
1343-
default: {
1344-
%3 = "emitc.variable"(){value = 42.0 : f32} : () -> f32
1345-
%4 = "emitc.variable"(){value = 42.0 : f32} : () -> f32
1346-
1347-
emitc.call_opaque "func2" (%3) : (f32) -> ()
1348-
emitc.call_opaque "func3" (%3, %4) { args = [1 : index, 0 : index] } : (f32, f32) -> ()
1349-
emitc.yield
1350-
}
1351-
return
1330+
// Example:
1331+
emitc.switch %0 : i32
1332+
case 2: {
1333+
%1 = emitc.call_opaque "func_b" () : () -> i32
1334+
emitc.yield
13521335
}
1353-
1354-
// Output for i32:
1355-
void emitc_switch_i32() {
1356-
int32_t v1 = 1;
1357-
1358-
switch (v1) {
1359-
case (2): {
1360-
int32_t v2 = func_b();
1361-
break;
1362-
}
1363-
case (5): {
1364-
int32_t v3 = func_a();
1365-
break;
1366-
}
1367-
default: {
1368-
float v4 = 4.200000000e+01f;
1369-
float v5 = 4.200000000e+01f;
1370-
func2(v4);
1371-
func3(v5, v4);
1372-
break;
1373-
}
1374-
return;
1336+
case 5: {
1337+
%2 = emitc.call_opaque "func_a" () : () -> i32
1338+
emitc.yield
13751339
}
1376-
...
1377-
// Example for ui16:
1378-
func.func @emitc_switch_ui16() {
1379-
%0 = "emitc.variable"(){value = 1 : ui16} : () -> ui16
1380-
1381-
emitc.switch %0 : ui16
1382-
case 2: {
1383-
%1 = emitc.call_opaque "func_b" () : () -> i32
1384-
emitc.yield
1385-
}
1386-
case 5: {
1387-
%2 = emitc.call_opaque "func_a" () : () -> i32
1388-
emitc.yield
1389-
}
1390-
default: {
1391-
%3 = "emitc.variable"(){value = 42.0 : f32} : () -> f32
1392-
%4 = "emitc.variable"(){value = 42.0 : f32} : () -> f32
1393-
1394-
emitc.call_opaque "func2" (%3) : (f32) -> ()
1395-
emitc.call_opaque "func3" (%3, %4) { args = [1 : index, 0 : index] } : (f32, f32) -> ()
1396-
emitc.yield
1397-
}
1398-
return
1340+
default: {
1341+
%3 = "emitc.variable"(){value = 42.0 : f32} : () -> f32
1342+
emitc.call_opaque "func2" (%3) : (f32) -> ()
1343+
emitc.yield
13991344
}
14001345

1401-
// Output for ui16:
1402-
void emitc_switch_ui16() {
1403-
uint16_t v1 = 1;
1404-
1405-
switch (v1) {
1406-
case (2): {
1407-
int32_t v2 = func_b();
1408-
break;
1409-
}
1410-
case (5): {
1411-
int32_t v3 = func_a();
1412-
break;
1413-
}
1414-
default: {
1415-
float v4 = 4.200000000e+01f;
1416-
float v5 = 4.200000000e+01f;
1417-
func2(v4);
1418-
func3(v5, v4);
1419-
break;
1420-
}
1421-
return;
1346+
// Output:
1347+
switch (v1) {
1348+
case (2): {
1349+
int32_t v2 = func_b();
1350+
break;
14221351
}
1423-
...
1424-
// Example for i64 with `-declare-variables-at-top` option:
1425-
func.func @emitc_switch_i64() {
1426-
%0 = "emitc.variable"(){value = 1 : i64} : () -> i64
1427-
1428-
emitc.switch %0 : i64
1429-
case 2: {
1430-
%1 = emitc.call_opaque "func_b" () : () -> i32
1431-
emitc.yield
1432-
}
1433-
case 5: {
1434-
%2 = emitc.call_opaque "func_a" () : () -> i32
1435-
emitc.yield
1436-
}
1437-
default: {
1438-
%3 = "emitc.variable"(){value = 42.0 : f32} : () -> f32
1439-
%4 = "emitc.variable"(){value = 42.0 : f32} : () -> f32
1440-
1441-
emitc.call_opaque "func2" (%3) : (f32) -> ()
1442-
emitc.call_opaque "func3" (%3, %4) { args = [1 : index, 0 : index] } : (f32, f32) -> ()
1443-
emitc.yield
1444-
}
1445-
return
1352+
case (5): {
1353+
int32_t v3 = func_a();
1354+
break;
14461355
}
1447-
1448-
// Output for i64 with `-declare-variables-at-top` option:
1449-
void emitc_switch_i64() {
1450-
int64_t v1;
1451-
float v2;
1452-
float v3;
1453-
int32_t v4;
1454-
int32_t v5;
1455-
v1 = 1;
1456-
1457-
switch (v1) {
1458-
case (2): {
1459-
v4 = func_b();
1460-
break;
1461-
}
1462-
case (5): {
1463-
v5 = func_a();
1464-
break;
1465-
}
1466-
default: {
1467-
v2 = 4.200000000e+01f;
1468-
v3 = 4.200000000e+01f;
1469-
func2(v2);
1470-
func3(v3, v2);
1471-
break;
1472-
}
1473-
return;
1356+
default: {
1357+
float v4 = 4.200000000e+01f;
1358+
func2(v4);
1359+
break;
14741360
}
14751361
```
14761362
}];

0 commit comments

Comments
 (0)