1/*===-- targets.c - tool for testing libLLVM and llvm-c API ---------------===*\
2|*                                                                            *|
3|*                     The LLVM Compiler Infrastructure                       *|
4|*                                                                            *|
5|* This file is distributed under the University of Illinois Open Source      *|
6|* License. See LICENSE.TXT for details.                                      *|
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 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