blob: 97f869689293da6867eecec26b97bf9af27b27c3 [file] [log] [blame] [edit]
// RUN: %offload-tblgen -gen-print-header -I %S/../../../liboffload/API %s | %fcheck-generic
// Check that print helpers are created for enums
include "APIDefs.td"
def : Enum {
let name = "my_enum_t";
let desc = "An example enum";
let etors =[
Etor<"VALUE_ONE", "The first enum value">,
Etor<"VALUE_TWO", "The second enum value">,
Etor<"VALUE_THREE", "The third enum value">,
Etor<"VALUE_FOUR", "The fourth enum value">,
];
}
// CHECK: inline llvm::raw_ostream &operator<<(llvm::raw_ostream &os, enum my_enum_t value)
// CHECK: switch (value) {
// CHECK: case MY_ENUM_VALUE_ONE:
// CHECK: os << "MY_ENUM_VALUE_ONE";
// CHECK: break;
// CHECK: case MY_ENUM_VALUE_TWO:
// CHECK: os << "MY_ENUM_VALUE_TWO";
// CHECK: break;
// CHECK: case MY_ENUM_VALUE_THREE:
// CHECK: os << "MY_ENUM_VALUE_THREE";
// CHECK: break;
// CHECK: case MY_ENUM_VALUE_FOUR:
// CHECK: os << "MY_ENUM_VALUE_FOUR";
// CHECK: break;
// CHECK: default:
// CHECK: os << "unknown enumerator";
// CHECK: break;