"\n");
}
+static void handle_input(int input_idx, int input_size, beyond_tensor *input)
+{
+ if (input_idx == input_size) {
+ fprintf(stderr, "Invalid input tensor, input_size must be given first (%d, %d)\n", input_idx, input_size);
+ _exit(EINVAL);
+ }
+
+ FILE *input_fp = fopen(optarg, "r");
+ if (input_fp != nullptr) {
+ fseek(input_fp, 0L, SEEK_END);
+ input[input_idx].size = ftell(input_fp);
+ fseek(input_fp, 0L, SEEK_SET);
+
+ input[input_idx].data = malloc(input[input_idx].size);
+ if (input[input_idx].data == nullptr) {
+ char errMsg[80] = { '\0' };
+ fprintf(stderr, "malloc: %s\n", strerror_r(errno, errMsg, sizeof(errMsg)));
+ } else {
+ if (fread(input[input_idx].data, input[input_idx].size, 1, input_fp) != 1) {
+ char errMsg[80] = { '\0' };
+ fprintf(stderr, "fread: %s\n", strerror_r(ferror(input_fp), errMsg, sizeof(errMsg)));
+ _exit(EIO);
+ }
+ }
+
+ if (fclose(input_fp) < 0) {
+ char errMsg[80] = { '\0' };
+ fprintf(stderr, "Unable to close the file pointer: %s\n", strerror_r(errno, errMsg, sizeof(errMsg)));
+ _exit(EIO);
+ }
+ }
+}
+
// ApplicationContext
int main(void)
{
_exit(0);
break;
case 'm':
- model = optarg ? strdup(optarg) : nullptr;
+ model = strdup(optarg);
break;
case 's':
if (sscanf(optarg, "%d", &input_size) != 1) {
}
break;
case 'i':
- if (input_idx == input_size) {
- fprintf(stderr, "Invalid input tensor, input_size must be given first (%d, %d)\n", input_idx, input_size);
- _exit(EINVAL);
- }
-
- if (optarg != nullptr) {
- FILE *input_fp = fopen(optarg, "r");
- if (input_fp != nullptr) {
- fseek(input_fp, 0L, SEEK_END);
- input[input_idx].size = ftell(input_fp);
- fseek(input_fp, 0L, SEEK_SET);
-
- input[input_idx].data = malloc(input[input_idx].size);
- if (input[input_idx].data == nullptr) {
- char errMsg[80] = { '\0' };
- fprintf(stderr, "malloc: %s\n", strerror_r(errno, errMsg, sizeof(errMsg)));
- } else {
- if (fread(input[input_idx].data, input[input_idx].size, 1, input_fp) != 1) {
- char errMsg[80] = { '\0' };
- fprintf(stderr, "fread: %s\n", strerror_r(ferror(input_fp), errMsg, sizeof(errMsg)));
- _exit(EIO);
- }
- }
-
- if (fclose(input_fp) < 0) {
- char errMsg[80] = { '\0' };
- fprintf(stderr, "Unable to close the file pointer: %s\n", strerror_r(errno, errMsg, sizeof(errMsg)));
- _exit(EIO);
- }
- }
- }
+ handle_input(input_idx, input_size, input);
input_idx++;
break;
case 't':
fprintf(stderr, "Invalid input(NULL)");
break;
}
- if (optarg == nullptr) {
- fprintf(stderr, "Invalid argument(NULL)");
- break;
- }
+
if (strcmp(optarg, "int8") == 0) {
input[input_idx].type = BEYOND_TENSOR_TYPE_INT8;
} else if (strcmp(optarg, "int16") == 0) {