MCPcopy Create free account
hub / github.com/WheretIB/nullc / GenCodeCmdPow

Function GenCodeCmdPow

NULLC/CodeGen_X86.cpp:2371–2390  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2369}
2370
2371void GenCodeCmdPow(VMCmd cmd)
2372{
2373 (void)cmd;
2374 EMIT_COMMENT("POW int");
2375 EMIT_OP_REG_NUM(o_mov, rECX, (int)(intptr_t)intPow);
2376 EMIT_CALL_REG(rECX);
2377#ifdef NULLC_OPTIMIZE_X86
2378 NULLC::stackRead[(16 + NULLC::stackTop) % NULLC::STACK_STATE_SIZE] = true;
2379 NULLC::stackRead[(16 + NULLC::stackTop - 1) % NULLC::STACK_STATE_SIZE] = true;
2380 KILL_REG(rEAX);KILL_REG(rEDX);
2381 NULLC::InvalidateDependand(rEAX);
2382 NULLC::InvalidateDependand(rEDX);
2383#endif
2384 EMIT_OP_REG_NUM(o_add, rESP, 8);
2385#ifdef __linux
2386 EMIT_OP_REG(o_push, rEAX);
2387#else
2388 EMIT_OP_REG(o_push, rEDX);
2389#endif
2390}
2391
2392void GenCodeCmdMod(VMCmd cmd)
2393{

Callers

nothing calls this directly

Calls 5

EMIT_COMMENTFunction · 0.85
EMIT_OP_REG_NUMFunction · 0.85
EMIT_CALL_REGFunction · 0.85
InvalidateDependandFunction · 0.85
EMIT_OP_REGFunction · 0.85

Tested by

no test coverage detected