Skip to content

Commit 5d36b7d

Browse files
dskhudiafacebook-github-bot
authored andcommitted
Update asmjit for fbcode and oss (#538)
Summary: Pull Request resolved: #538 Update asmjit submodule Reviewed By: jspark1105 Differential Revision: D26960808 fbshipit-source-id: 397d49868f314173c909eb6dccdc8ceb1c4a21bd
1 parent 2b5c02d commit 5d36b7d

12 files changed

Lines changed: 161 additions & 136 deletions

src/EmbeddingSpMDM.cc

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ GenEmbeddingSpMDMLookup<inType, indxType, offsetType, instSet, ROWWISE_SPARSE>::
188188
bool areIndices64b = std::is_same<indxType, std::int64_t>::value;
189189

190190
asmjit::CodeHolder code;
191-
code.init(runtime().codeInfo());
191+
code.init(runtime().environment());
192192
x86::Assembler assembler(&code);
193193
x86::Emitter* a = assembler.as<x86::Emitter>();
194194
#if defined(FBGEMM_LOG_CODE)
@@ -264,19 +264,22 @@ GenEmbeddingSpMDMLookup<inType, indxType, offsetType, instSet, ROWWISE_SPARSE>::
264264
const float*, // weights
265265
float*, // out
266266
const std::int32_t*, // compressed_indices_table and then mask
267-
const int*>(asmjit::CallConv::kIdHost));
267+
const int*>(asmjit::CallConv::kIdHost),
268+
a->environment());
268269
} else {
269-
func.init(asmjit::FuncSignatureT<
270-
bool,
271-
std::int64_t, // output_size
272-
std::int64_t, // index_size
273-
std::int64_t, // data_size
274-
const inType*, // input uint8_t or float
275-
const indxType*, // indices
276-
const offsetType*, // offsets or lengths
277-
const float*, // weights
278-
float*, // out and then mask
279-
const int*>(asmjit::CallConv::kIdHost));
270+
func.init(
271+
asmjit::FuncSignatureT<
272+
bool,
273+
std::int64_t, // output_size
274+
std::int64_t, // index_size
275+
std::int64_t, // data_size
276+
const inType*, // input uint8_t or float
277+
const indxType*, // indices
278+
const offsetType*, // offsets or lengths
279+
const float*, // weights
280+
float*, // out and then mask
281+
const int*>(asmjit::CallConv::kIdHost),
282+
a->environment());
280283
}
281284

282285
asmjit::FuncFrame frame;

src/EmbeddingSpMDMNBit.cc

Lines changed: 28 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ typename ReturnFunctionSignature<indxType, offsetType, ROWWISE_SPARSE>::
168168
bool areIndices64b = is_same<indxType, int64_t>::value;
169169

170170
asmjit::CodeHolder code;
171-
code.init(runtime().codeInfo());
171+
code.init(runtime().environment());
172172
x86::Assembler assembler(&code);
173173
x86::Emitter* a = assembler.as<x86::Emitter>();
174174
#if defined(FBGEMM_LOG_CODE)
@@ -234,30 +234,34 @@ typename ReturnFunctionSignature<indxType, offsetType, ROWWISE_SPARSE>::
234234
asmjit::FuncDetail func;
235235

236236
if (ROWWISE_SPARSE) {
237-
func.init(asmjit::FuncSignatureT<
238-
bool,
239-
int64_t, // output_size
240-
int64_t, // index_size
241-
int64_t, // uncompressed_data_size
242-
const uint8_t*, // input uint8_t or float
243-
const indxType*, // indices
244-
const offsetType*, // offsets or lengths
245-
const float*, // weights
246-
float*, // out
247-
const int32_t* /* compressed_indices_table */,
248-
const int* /* mask */>(asmjit::CallConv::kIdHost));
237+
func.init(
238+
asmjit::FuncSignatureT<
239+
bool,
240+
int64_t, // output_size
241+
int64_t, // index_size
242+
int64_t, // uncompressed_data_size
243+
const uint8_t*, // input uint8_t or float
244+
const indxType*, // indices
245+
const offsetType*, // offsets or lengths
246+
const float*, // weights
247+
float*, // out
248+
const int32_t* /* compressed_indices_table */,
249+
const int* /* mask */>(asmjit::CallConv::kIdHost),
250+
a->environment());
249251
} else {
250-
func.init(asmjit::FuncSignatureT<
251-
bool,
252-
int64_t, // output_size
253-
int64_t, // index_size
254-
int64_t, // data_size
255-
const uint8_t*, // input uint8_t or float
256-
const indxType*, // indices
257-
const offsetType*, // offsets or lengths
258-
const float*, // weights
259-
float*, // out
260-
const int* /* mask */>(asmjit::CallConv::kIdHost));
252+
func.init(
253+
asmjit::FuncSignatureT<
254+
bool,
255+
int64_t, // output_size
256+
int64_t, // index_size
257+
int64_t, // data_size
258+
const uint8_t*, // input uint8_t or float
259+
const indxType*, // indices
260+
const offsetType*, // offsets or lengths
261+
const float*, // weights
262+
float*, // out
263+
const int* /* mask */>(asmjit::CallConv::kIdHost),
264+
a->environment());
261265
}
262266

263267
asmjit::FuncFrame frame;

src/FbgemmI64.cc

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ CodeGenBase<int64_t, int64_t, int64_t, int64_t>::getOrCreate(
138138

139139
return codeCache_.getOrCreate(kernelSig, [&]() -> jit_micro_kernel_fp {
140140
asmjit::CodeHolder code;
141-
code.init(runtime().codeInfo());
141+
code.init(runtime().environment());
142142
x86::Assembler assembler(&code);
143143
x86::Emitter* a = assembler.as<x86::Emitter>();
144144
#ifdef FBGEMM_LOG_CODE
@@ -173,14 +173,16 @@ CodeGenBase<int64_t, int64_t, int64_t, int64_t>::getOrCreate(
173173
x86::Gp ldcReg = a->gpz(9);
174174

175175
asmjit::FuncDetail func;
176-
func.init(asmjit::FuncSignatureT<
177-
void,
178-
int64_t*,
179-
int64_t*,
180-
int64_t*,
181-
int64_t*,
182-
int,
183-
int>(asmjit::CallConv::kIdHost));
176+
func.init(
177+
asmjit::FuncSignatureT<
178+
void,
179+
int64_t*,
180+
int64_t*,
181+
int64_t*,
182+
int64_t*,
183+
int,
184+
int>(asmjit::CallConv::kIdHost),
185+
a->environment());
184186

185187
asmjit::FuncFrame frame;
186188
frame.init(func);

src/GenerateI8Depthwise.cc

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ GenI8Depthwise::jit_kernel_signature GenI8Depthwise::getOrCreate(
203203

204204
return codeCache_.getOrCreate(kernelSig, [&]() -> jit_kernel_signature {
205205
asmjit::CodeHolder code;
206-
code.init(runtime().codeInfo());
206+
code.init(runtime().environment());
207207
x86::Assembler assembler(&code);
208208
x86::Emitter* e = assembler.as<x86::Emitter>();
209209
#ifdef FBGEMM_LOG_CODE
@@ -259,18 +259,20 @@ GenI8Depthwise::jit_kernel_signature GenI8Depthwise::getOrCreate(
259259
x86::Gp a_addr_save = e->gpz(15);
260260

261261
asmjit::FuncDetail func;
262-
func.init(asmjit::FuncSignatureT<
263-
void,
264-
const std::uint8_t*,
265-
const std::int8_t*,
266-
std::int32_t*,
267-
std::int32_t*,
268-
int,
269-
int,
270-
int,
271-
const int*,
272-
int,
273-
const std::int32_t*>(asmjit::CallConv::kIdHost));
262+
func.init(
263+
asmjit::FuncSignatureT<
264+
void,
265+
const std::uint8_t*,
266+
const std::int8_t*,
267+
std::int32_t*,
268+
std::int32_t*,
269+
int,
270+
int,
271+
int,
272+
const int*,
273+
int,
274+
const std::int32_t*>(asmjit::CallConv::kIdHost),
275+
e->environment());
274276

275277
asmjit::FuncFrame frame;
276278
frame.init(func);

src/GenerateKernelU8S8S32ACC16.cc

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ getOrCreate<inst_set_t::avx2>(
134134

135135
return codeCache_.getOrCreate(kernelSig, [&]() -> jit_micro_kernel_fp {
136136
asmjit::CodeHolder code;
137-
code.init(runtime().codeInfo());
137+
code.init(runtime().environment());
138138
x86::Assembler assembler(&code);
139139
x86::Emitter* a = assembler.as<x86::Emitter>();
140140

@@ -182,14 +182,16 @@ getOrCreate<inst_set_t::avx2>(
182182
x86::Gp ldcReg = a->gpz(9);
183183

184184
asmjit::FuncDetail func;
185-
func.init(asmjit::FuncSignatureT<
186-
void,
187-
uint8_t*,
188-
int8_t*,
189-
int8_t*,
190-
int32_t*,
191-
int,
192-
int>(asmjit::CallConv::kIdHost));
185+
func.init(
186+
asmjit::FuncSignatureT<
187+
void,
188+
uint8_t*,
189+
int8_t*,
190+
int8_t*,
191+
int32_t*,
192+
int,
193+
int>(asmjit::CallConv::kIdHost),
194+
a->environment());
193195

194196
asmjit::FuncFrame frame;
195197
frame.init(func);

src/GenerateKernelU8S8S32ACC16Avx512.cc

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ CodeGenBase<uint8_t, int8_t, int32_t, int16_t>::getOrCreate(
100100

101101
return codeCache_.getOrCreate(kernelSig, [&]() -> jit_micro_kernel_fp {
102102
asmjit::CodeHolder code;
103-
code.init(runtime().codeInfo());
103+
code.init(runtime().environment());
104104
x86::Assembler assembler(&code);
105105
x86::Emitter* a = assembler.as<x86::Emitter>();
106106

@@ -145,14 +145,16 @@ CodeGenBase<uint8_t, int8_t, int32_t, int16_t>::getOrCreate(
145145
x86::Gp ldcReg = a->gpz(9);
146146

147147
asmjit::FuncDetail func;
148-
func.init(asmjit::FuncSignatureT<
149-
void,
150-
uint8_t*,
151-
int8_t*,
152-
int8_t*,
153-
int32_t*,
154-
int,
155-
int>(asmjit::CallConv::kIdHost));
148+
func.init(
149+
asmjit::FuncSignatureT<
150+
void,
151+
uint8_t*,
152+
int8_t*,
153+
int8_t*,
154+
int32_t*,
155+
int,
156+
int>(asmjit::CallConv::kIdHost),
157+
a->environment());
156158

157159
asmjit::FuncFrame frame;
158160
frame.init(func);

src/GenerateKernelU8S8S32ACC32.cc

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ CodeGenBase<uint8_t, int8_t, int32_t, int32_t>::getOrCreate(
136136

137137
return codeCache_.getOrCreate(kernelSig, [&]() -> jit_micro_kernel_fp {
138138
asmjit::CodeHolder code;
139-
code.init(runtime().codeInfo());
139+
code.init(runtime().environment());
140140
x86::Assembler assembler(&code);
141141
x86::Emitter* a = assembler.as<x86::Emitter>();
142142
#if defined(FBGEMM_LOG_CODE)
@@ -179,14 +179,16 @@ CodeGenBase<uint8_t, int8_t, int32_t, int32_t>::getOrCreate(
179179
x86::Gp ldcReg = a->gpz(9);
180180

181181
asmjit::FuncDetail func;
182-
func.init(asmjit::FuncSignatureT<
183-
void,
184-
uint8_t*,
185-
int8_t*,
186-
int8_t*,
187-
int32_t*,
188-
int,
189-
int>(asmjit::CallConv::kIdHost));
182+
func.init(
183+
asmjit::FuncSignatureT<
184+
void,
185+
uint8_t*,
186+
int8_t*,
187+
int8_t*,
188+
int32_t*,
189+
int,
190+
int>(asmjit::CallConv::kIdHost),
191+
a->environment());
190192

191193
asmjit::FuncFrame frame;
192194
frame.init(func);

src/GenerateKernelU8S8S32ACC32Avx512VNNI.cc

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ CodeGenBase<uint8_t, int8_t, int32_t, int32_t>::getOrCreate(
8888

8989
return codeCache_.getOrCreate(kernelSig, [&]() -> jit_micro_kernel_fp {
9090
asmjit::CodeHolder code;
91-
code.init(runtime().codeInfo());
91+
code.init(runtime().environment());
9292
x86::Assembler assembler(&code);
9393
x86::Emitter* a = assembler.as<x86::Emitter>();
9494

@@ -127,14 +127,16 @@ CodeGenBase<uint8_t, int8_t, int32_t, int32_t>::getOrCreate(
127127
x86::Gp ldcReg = a->gpz(9);
128128

129129
asmjit::FuncDetail func;
130-
func.init(asmjit::FuncSignatureT<
131-
void,
132-
uint8_t*,
133-
int8_t*,
134-
int8_t*,
135-
int32_t*,
136-
int,
137-
int>(asmjit::CallConv::kIdHost));
130+
func.init(
131+
asmjit::FuncSignatureT<
132+
void,
133+
uint8_t*,
134+
int8_t*,
135+
int8_t*,
136+
int32_t*,
137+
int,
138+
int>(asmjit::CallConv::kIdHost),
139+
a->environment());
138140

139141
asmjit::FuncFrame frame;
140142
frame.init(func);

src/GroupwiseConv.cc

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ jit_conv_kernel_fp getOrCreateConvKernel(
175175
template <int SPATIAL_DIM, inst_set_t INST_SET>
176176
jit_conv_kernel_fp GenConvKernel<SPATIAL_DIM, INST_SET>::getOrCreate() {
177177
asmjit::CodeHolder code;
178-
code.init(this->runtime().codeInfo());
178+
code.init(this->runtime().environment());
179179
x86::Assembler assembler(&code);
180180
x86::Emitter* a = assembler.as<x86::Emitter>();
181181

@@ -215,16 +215,18 @@ jit_conv_kernel_fp GenConvKernel<SPATIAL_DIM, INST_SET>::getOrCreate() {
215215
scratchReg1_ = a->gpz(12);
216216
scratchReg2_ = a->gpz(13);
217217

218-
func_.init(asmjit::FuncSignatureT<
219-
void,
220-
uint8_t*,
221-
int8_t*,
222-
int32_t*,
223-
int32_t,
224-
int32_t,
225-
int32_t,
226-
int32_t,
227-
int32_t*>(asmjit::CallConv::kIdHost));
218+
func_.init(
219+
asmjit::FuncSignatureT<
220+
void,
221+
uint8_t*,
222+
int8_t*,
223+
int32_t*,
224+
int32_t,
225+
int32_t,
226+
int32_t,
227+
int32_t,
228+
int32_t*>(asmjit::CallConv::kIdHost),
229+
a->environment());
228230

229231
frame_.init(func_);
230232

0 commit comments

Comments
 (0)