summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/tools/llvm-c-test/attributes.c
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/llvm/tools/llvm-c-test/attributes.c')
-rw-r--r--gnu/llvm/tools/llvm-c-test/attributes.c80
1 files changed, 0 insertions, 80 deletions
diff --git a/gnu/llvm/tools/llvm-c-test/attributes.c b/gnu/llvm/tools/llvm-c-test/attributes.c
deleted file mode 100644
index c7bc0d3c87b..00000000000
--- a/gnu/llvm/tools/llvm-c-test/attributes.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/*===-- attributes.c - tool for testing libLLVM and llvm-c API ------------===*\
-|* *|
-|* The LLVM Compiler Infrastructure *|
-|* *|
-|* This file is distributed under the University of Illinois Open Source *|
-|* License. See LICENSE.TXT for details. *|
-|* *|
-|*===----------------------------------------------------------------------===*|
-|* *|
-|* This file implements the --test-attributes and --test-callsite-attributes *|
-|* commands in llvm-c-test. *|
-|* *|
-\*===----------------------------------------------------------------------===*/
-
-#include "llvm-c-test.h"
-
-#include <assert.h>
-#include <stdlib.h>
-
-int llvm_test_function_attributes(void) {
- LLVMEnablePrettyStackTrace();
-
- LLVMModuleRef M = llvm_load_module(false, true);
-
- LLVMValueRef F = LLVMGetFirstFunction(M);
- while (F) {
- // Read attributes
- int Idx, ParamCount;
- for (Idx = LLVMAttributeFunctionIndex, ParamCount = LLVMCountParams(F);
- Idx <= ParamCount; ++Idx) {
- int AttrCount = LLVMGetAttributeCountAtIndex(F, Idx);
- LLVMAttributeRef *Attrs =
- (LLVMAttributeRef *)malloc(AttrCount * sizeof(LLVMAttributeRef));
- assert(Attrs);
- LLVMGetAttributesAtIndex(F, Idx, Attrs);
- free(Attrs);
- }
- F = LLVMGetNextFunction(F);
- }
-
- LLVMDisposeModule(M);
-
- return 0;
-}
-
-int llvm_test_callsite_attributes(void) {
- LLVMEnablePrettyStackTrace();
-
- LLVMModuleRef M = llvm_load_module(false, true);
-
- LLVMValueRef F = LLVMGetFirstFunction(M);
- while (F) {
- LLVMBasicBlockRef BB;
- for (BB = LLVMGetFirstBasicBlock(F); BB; BB = LLVMGetNextBasicBlock(BB)) {
- LLVMValueRef I;
- for (I = LLVMGetFirstInstruction(BB); I; I = LLVMGetNextInstruction(I)) {
- if (LLVMIsACallInst(I)) {
- // Read attributes
- int Idx, ParamCount;
- for (Idx = LLVMAttributeFunctionIndex,
- ParamCount = LLVMCountParams(F);
- Idx <= ParamCount; ++Idx) {
- int AttrCount = LLVMGetCallSiteAttributeCount(I, Idx);
- LLVMAttributeRef *Attrs = (LLVMAttributeRef *)malloc(
- AttrCount * sizeof(LLVMAttributeRef));
- assert(Attrs);
- LLVMGetCallSiteAttributes(I, Idx, Attrs);
- free(Attrs);
- }
- }
- }
- }
-
- F = LLVMGetNextFunction(F);
- }
-
- LLVMDisposeModule(M);
-
- return 0;
-}