author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Mon, 17 Aug 2015 08:53:26 +0100 | |
changeset 33 | feabf14b6c1d |
parent 24 | 7e7ddd55174c |
child 35 | fd459b38f324 |
permissions | -rw-r--r-- |
14
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
1 |
" |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
2 |
Copyright (C) 2015-now Jan Vrany |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
3 |
|
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
4 |
This code is not an open-source (yet). You may use this code |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
5 |
for your own experiments and projects, given that: |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
6 |
|
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
7 |
* all modification to the code will be sent to the |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
8 |
original author for inclusion in future releases |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
9 |
* this is not used in any commercial software |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
10 |
|
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
11 |
This license is provisional and may (will) change in |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
12 |
a future. |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
13 |
" |
12
f98e97fd02ef
Package renamed from jv:libllvms to jv:llvm_s
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
4
diff
changeset
|
14 |
"{ Package: 'jv:llvm_s' }" |
0 | 15 |
|
16 |
"{ NameSpace: Smalltalk }" |
|
17 |
||
1
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
18 |
LLVMDisposableObject subclass:#LLVMModule |
0 | 19 |
instanceVariableNames:'' |
20 |
classVariableNames:'' |
|
21 |
poolDictionaries:'LLVMTypeKind' |
|
13
fa967c0e1827
Renamed class categories to begin with LLVM-S
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
12
diff
changeset
|
22 |
category:'LLVM-S-Core' |
0 | 23 |
! |
24 |
||
14
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
25 |
!LLVMModule class methodsFor:'documentation'! |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
26 |
|
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
27 |
copyright |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
28 |
" |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
29 |
Copyright (C) 2015-now Jan Vrany |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
30 |
|
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
31 |
This code is not an open-source (yet). You may use this code |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
32 |
for your own experiments and projects, given that: |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
33 |
|
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
34 |
* all modification to the code will be sent to the |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
35 |
original author for inclusion in future releases |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
36 |
* this is not used in any commercial software |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
37 |
|
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
38 |
This license is provisional and may (will) change in |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
39 |
a future. |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
40 |
" |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
41 |
! ! |
c7dea3fcc5a7
Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
13
diff
changeset
|
42 |
|
0 | 43 |
!LLVMModule class methodsFor:'instance creation'! |
44 |
||
45 |
newWithName: name |
|
46 |
^ LLVM ModuleCreateWithName: name |
|
47 |
||
48 |
"Created: / 07-07-2015 / 20:22:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
49 |
! ! |
|
50 |
||
4 | 51 |
!LLVMModule methodsFor:'accessing'! |
52 |
||
53 |
dataLayoutString |
|
54 |
^ LLVM GetDataLayout: self. |
|
55 |
||
56 |
"Created: / 11-07-2015 / 06:57:22 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
57 |
! |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
58 |
|
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
59 |
debugInfoBuilder |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
60 |
^ LLVMDIBuilder newForModule: self |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
61 |
|
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
62 |
"Created: / 13-08-2015 / 06:35:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
4 | 63 |
! ! |
64 |
||
0 | 65 |
!LLVMModule methodsFor:'adding & removing'! |
66 |
||
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
67 |
addFlag: key value: value behavior: behavior |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
68 |
self assertIsString: key. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
69 |
self assertIsMetadata: value. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
70 |
self assertIsIntegerUnsigned: behavior. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
71 |
|
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
72 |
LLVMCEXT ModuleAddModuleFlag: self _: behavior _: key _: value |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
73 |
|
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
74 |
"Created: / 15-08-2015 / 06:58:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
75 |
"Modified (format): / 15-08-2015 / 22:06:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
76 |
! |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
77 |
|
0 | 78 |
addFunctionNamed: name type: type |
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
79 |
| function | |
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
80 |
self assertIsString: name. |
0 | 81 |
self assert: type kind == LLVMFunctionTypeKind. |
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
82 |
|
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
83 |
function := LLVM AddFunction: self _: name _: type. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
84 |
"/ TODO: Certainly a hack. must find a better way to do this. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
85 |
function changeClassTo: LLVMFunction. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
86 |
^ function |
0 | 87 |
|
88 |
"Created: / 07-07-2015 / 21:59:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
89 |
"Modified: / 14-08-2015 / 13:05:22 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
4 | 90 |
! |
91 |
||
16
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
92 |
addGlobalNamed: name type: type value: value |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
93 |
| global | |
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
94 |
self assertIsString: name. |
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
95 |
self assertIsType: type. |
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
96 |
self assertIsValue: value ofType: type. |
16
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
97 |
|
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
98 |
global := LLVM AddGlobal: self _: type _: name. |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
99 |
LLVM SetInitializer: global _: value. |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
100 |
^ global |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
101 |
|
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
102 |
"Created: / 03-08-2015 / 16:41:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
103 |
"Modified: / 10-08-2015 / 17:07:54 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
16
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
104 |
! |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
105 |
|
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
106 |
addGlobalNamed: name value: value |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
107 |
^ self addGlobalNamed: name type: value type value: value |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
108 |
|
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
109 |
"Created: / 03-08-2015 / 16:57:25 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
110 |
! |
23e82cf19788
Tests refactored to be actually a testcase. Introduced LLVMConstant class
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
14
diff
changeset
|
111 |
|
4 | 112 |
addMethodForClass: class selector: selector |
113 |
| name type typeObj typeIlcPtr argTypes| |
|
114 |
||
115 |
name := LLVMStXMethod llvmFunctionNameForClass: class selector: selector. |
|
116 |
typeObj := LLVMType intptr. |
|
117 |
typeIlcPtr := LLVMType intptr. |
|
118 |
argTypes := LLVMObjectArray new: 4"receiver, selector, clsOrNil, pIlc" + selector numArgs. |
|
119 |
1 to: argTypes size do:[:i | |
|
120 |
argTypes at: i put: typeObj. |
|
121 |
]. |
|
122 |
argTypes at: 4 put: typeIlcPtr. |
|
123 |
type := LLVMType function: argTypes returning: typeObj. |
|
124 |
^ LLVM AddMethod: self _: name _: type. |
|
125 |
||
126 |
"Created: / 11-07-2015 / 09:37:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
127 |
! |
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
128 |
|
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
129 |
getIntrinsicNamed: name |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
130 |
| function | |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
131 |
|
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
132 |
function := self getIntrinsicNamed: name types: #(). |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
133 |
"/ TODO: Certainly a hack. must find a better way to do this. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
134 |
function changeClassTo: LLVMFunction. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
135 |
^ function |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
136 |
|
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
137 |
"Created: / 14-08-2015 / 14:10:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
138 |
! |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
139 |
|
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
140 |
getIntrinsicNamed: name types: types |
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
141 |
| intrinsic | |
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
142 |
self assertIsString: name. |
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
143 |
self assertIsTypeArray: types. |
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
144 |
intrinsic := LLVMCEXT GetIntrinsicByName: self _: name _: types size _: types asLLVMObjectArray. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
145 |
"/ TODO: Certainly a hack. must find a better way to do this. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
146 |
intrinsic changeClassTo: LLVMFunction. |
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
147 |
^ intrinsic |
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
148 |
|
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
149 |
"Created: / 10-08-2015 / 17:06:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
33
feabf14b6c1d
Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
24
diff
changeset
|
150 |
"Modified: / 17-08-2015 / 07:43:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
0 | 151 |
! ! |
152 |
||
153 |
!LLVMModule methodsFor:'debugging'! |
|
154 |
||
2
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
155 |
inspectorExtraAttributes |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
156 |
| d | |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
157 |
|
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
158 |
d := super inspectorExtraAttributes. |
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
159 |
d add: '-llvm ir' -> [ self dumpString ]. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
160 |
d add: '-assembly' -> [ String streamContents:[:s | self writeAssemblyOn: s] ]. |
2
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
161 |
^ d |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
162 |
|
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
163 |
"Created: / 10-07-2015 / 14:37:09 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
164 |
"Modified: / 05-08-2015 / 23:47:51 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
165 |
! ! |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
166 |
|
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
167 |
!LLVMModule methodsFor:'debugging-dumping'! |
0 | 168 |
|
2
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
169 |
dumpOn: aStream |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
170 |
aStream nextPutAll: self dumpString |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
171 |
|
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
172 |
"Created: / 10-07-2015 / 14:32:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
173 |
! |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
174 |
|
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
175 |
dumpString |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
176 |
| cstr str| |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
177 |
|
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
178 |
cstr := LLVM PrintModuleToString: self. |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
179 |
str := cstr copyCStringFromHeap. |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
180 |
LLVM DisposeMessage: cstr. |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
181 |
^ str |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
182 |
|
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
183 |
"Created: / 10-07-2015 / 14:31:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
0 | 184 |
! ! |
185 |
||
1
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
186 |
!LLVMModule methodsFor:'initialization & release'! |
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
187 |
|
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
188 |
dispose |
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
189 |
^ LLVM DisposeModule: self |
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
190 |
|
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
191 |
"Modified: / 08-07-2015 / 22:40:35 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
192 |
! ! |
e3dcb6272f0b
Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
0
diff
changeset
|
193 |
|
2
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
194 |
!LLVMModule methodsFor:'inspecting'! |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
195 |
|
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
196 |
inspector2TabASM |
2
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
197 |
<inspector2Tab> |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
198 |
|
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
199 |
^ (self newInspector2Tab) |
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
200 |
label:'Assembly'; |
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
201 |
priority:49; |
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
202 |
text: [ String streamContents:[:s | self writeAssemblyOn: s] ]; |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
203 |
yourself |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
204 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
205 |
"Created: / 05-08-2015 / 23:47:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
24
7e7ddd55174c
Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
21
diff
changeset
|
206 |
"Modified: / 10-08-2015 / 17:49:54 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
207 |
! |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
208 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
209 |
inspector2TabIR |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
210 |
<inspector2Tab> |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
211 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
212 |
^ (self newInspector2Tab) |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
213 |
label:'LLVM IR'; |
2
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
214 |
priority:50; |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
215 |
text: [ self dumpString ]; |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
216 |
yourself |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
217 |
|
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
218 |
"Created: / 05-08-2015 / 23:29:13 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
219 |
! ! |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
220 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
221 |
!LLVMModule methodsFor:'writing-assembly'! |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
222 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
223 |
writeAssemblyOn: aStream |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
224 |
| bitcode assembly | |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
225 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
226 |
bitcode := Filename newTemporary. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
227 |
self writeBitcodeToFile: bitcode. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
228 |
assembly := bitcode withSuffix:'s'. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
229 |
[ |
21
64c5f01be2b3
Introduced class LLVMConfig to abstract a particular LLVM version
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
20
diff
changeset
|
230 |
(OperatingSystem executeCommand: (LLVMConfig bindir , Filename separator , 'llc ' , bitcode pathName)) ifFalse:[ |
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
231 |
self error: 'Failed to generate assembly'. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
232 |
]. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
233 |
aStream nextPutAll: assembly contents asString. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
234 |
] ensure:[ |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
235 |
bitcode remove. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
236 |
assembly remove. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
237 |
]. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
238 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
239 |
"Created: / 05-08-2015 / 23:46:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
21
64c5f01be2b3
Introduced class LLVMConfig to abstract a particular LLVM version
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
20
diff
changeset
|
240 |
"Modified: / 07-08-2015 / 14:09:38 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
241 |
! ! |
53abac7217de
Added support for creating execution engines and fetching function addresses.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
242 |
|
20
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
243 |
!LLVMModule methodsFor:'writing-bitcode'! |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
244 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
245 |
writeBitcodeToFile: aStringOrFilename |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
246 |
| file path | |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
247 |
file := aStringOrFilename asFilename. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
248 |
path := file pathName. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
249 |
file exists ifTrue:[ |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
250 |
file isWritable ifFalse:[ |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
251 |
self error: 'File not writable (', file pathName , ')'. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
252 |
^ self. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
253 |
]. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
254 |
] ifFalse:[ |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
255 |
| dir | |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
256 |
dir := file directory. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
257 |
dir exists ifFalse:[ |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
258 |
self error: 'Directory does not exists (', dir pathName , ')'. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
259 |
^ self. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
260 |
]. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
261 |
dir isWritable ifFalse:[ |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
262 |
self error: 'Directory not writable (', dir pathName , ')'. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
263 |
^ self. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
264 |
] |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
265 |
]. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
266 |
LLVM WriteBitcodeToFile: self _: path. |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
267 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
268 |
"Created: / 05-08-2015 / 22:10:10 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
269 |
! ! |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
270 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
271 |
!LLVMModule class methodsFor:'documentation'! |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
272 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
273 |
version_HG |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
274 |
|
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
275 |
^ '$Changeset: <not expanded> $' |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
276 |
! ! |
29174b92f44a
Added inspector tab to show generated assembly for a module
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
19
diff
changeset
|
277 |