31 lines · c
1/*===-- targets.c - tool for testing libLLVM and llvm-c API ---------------===*\2|* *|3|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|4|* Exceptions. *|5|* See https://llvm.org/LICENSE.txt for license information. *|6|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|7|* *|8|*===----------------------------------------------------------------------===*|9|* *|10|* This file implements the --targets command in llvm-c-test. *|11|* *|12\*===----------------------------------------------------------------------===*/13 14#include "llvm-c/TargetMachine.h"15#include <stdio.h>16 17int llvm_targets_list(void) {18 LLVMTargetRef t;19 LLVMInitializeAllTargetInfos();20 LLVMInitializeAllTargets();21 22 for (t = LLVMGetFirstTarget(); t; t = LLVMGetNextTarget(t)) {23 printf("%s", LLVMGetTargetName(t));24 if (LLVMTargetHasJIT(t))25 printf(" (+jit)");26 printf("\n - %s\n", LLVMGetTargetDescription(t));27 }28 29 return 0;30}31