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 llvm_targets_list(void)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