-
Notifications
You must be signed in to change notification settings - Fork 10
/
DESCRIPTION
116 lines (116 loc) · 3.61 KB
/
DESCRIPTION
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
Package: Rllvm
Version: 0.14-0
llvmVersion: <= 17.0
Title: Interface to llvm for dynamically compiling native code and static native code analysis.
Author: Duncan Temple Lang, Vince Buffalo
SystemRequirements: llvm (>= 2.7)
Maintainer: Duncan Temple Lang <[email protected]>
Description: This package is an interface to some of the
functionality in the LLVM toolkit for programmatically constructing native code and
also comprehensively analyzing native code.
This allows us to build "compilers" in R and use LLVM's optmization and JIT techniques
to improve the code we generate and then turn it into machine code.
This is currently not a compiler. There are examples that illustrate how
to generate code to create native functions that are equivalent to
some simple R functions. The goal is to build on this and create a compiler,
hopefully building on the framework that Luke Tierney has created in his
compiler package (see http://www.cs.uiowa.edu/~luke/R/compiler/).
This is in the RLLVCompile package.
The speed up we achieve compiling R code in our examples illustrate that
we can significantly outperform the R interpreter and also
can outperform some of R's vectorized code by rearranging the computations,
e.g. fusing loops, avoiding memory usage.
License: GPL-2
Depends: R (>= 2.7.0)
Imports: methods, Rffi
RelatedPackages: RLLVMCompile, NativeCodeAnalysis, RCIndex
URL: https://github.com/duncantl/Rllvm
Note: We hope to build on this to build a compiler for parts of the R language. See the RLLVMCompile package
at https://github.com/duncantl/R2llvm/ and https://github.com/duncantl/RLLVMCompile/
Collate: llvmVersion.R
oldClasses.R
classDefs.R
llvmValueClasses.R
classDefs2.R
llvmTypeClasses.R
llvmMDNodeClasses.R
otherClasses.R
manual_generics.R
generics_bools.R
LoadStore_generics.R
methods.R
asMethods.R
block.R module.R typeDefs.R
ExecutionEngine.R IRBuilder.R onLoad.R ICmpEnums.R constants.R
externalLinkage.R globalVar.R value.R dso.R context.R TypeID.R
generics.R instruction.R manual_instruction.R mkFun.R intrinsic.R
IntrinsicEnums.R sexpTypes.R utils.R targets.R
simpleFunction.R PassManager.R llvm.R
declareFunction.R typeName.R
ostream.R targetMachine.R
metadata.R
opCodeClassMap.R
classof.R initialize.R
CallingConvEnum.R
llvmPTXUtils.R
byVal.R
getCondition.R
passConstructors.R
showBlocks.R
version.R
z_enumDefs_3.4.R
z_enumDefs_3.5.R
z_enumDefs_3.6.R
z_enumDefs_3.7.R
z_enumDefs_3.8.R
z_enumDefs_3.9.R
z_enumDefs_4.0.R
z_enumDefs_5.0.R
z_enumDefs_6.0.R
z_enumDefs_7.0.R
z_enumDefs_8.0.R
z_enumDefs_9.0.R
z_enumDefs_10.0.R
z_enumDefs_11.0.R
z_enumDefs_12.0.R
z_enumDefs_13.0.R
z_enumDefs_14.0.R
z_enumDefs_15.0.R
z_enumDefs_16.0.R
z_enumDefs_17.0.R
z_enumDefs_18.1.R
types.R
Function.R
ascii.R
user.R
phi.R
datalayout.R
DIBuilder.R
procEnumValues.R
streams.R
ffi.R
assembler.R
needSymbol.R
drawCFG.R
bool_methods.R
LoadStore.R
CallInst.R
InvokeInst.R
Argument.R
debugInfo.R
createAccessors.R
getArray.R
guessFile.R
findCalledFunctions.R
ModuleODSigs.R
lljit.R
asEnumValue.R
dominates.R
loop.R
allPredecessors.R
callGraph.R
cfg.R
mkCallProxy.R
RAPIRoutineSignatures.R
gep.R
inferPointerElType.R