[LLVMdev] Reserve some empty memory space after each basic block
John Criswell
jtcriswel at gmail.com
Thu Sep 11 17:48:17 PDT 2014
Dear Yue,
The easiest thing to do is to write an LLVM pass that inserts some
inline assembly code at the end of each basic block (right before the
terminator instruction) that contains NOP instructions.
To learn to do that, you should read the "Writing an LLVM Pass"
document, the "LLVM Programmer's Manual," and be prepared to look at the
doxygen documentation for creating inline assembly statements.
Regards,
John Criswell
On 9/11/14, 3:26 PM, Yue Chen wrote:
> Hello!
>
> I am going to do a research project that inserts instructions (e.g.,
> JMP) after each code basic block at runtime of a program (when the
> program is already loaded into memory).
>
> I believe first I should allocate (reserve) more memory space (could
> be filled with "NOP" instructions) after each basic block during
> compilation in order to put the extra instructions thereafter.
>
> Could anyone tell me how to implement it in LLVM for 32-bit x86
> platform? E.g., which functions or data structures or materials of
> LLVM I should look at or refer to.
>
> I really appreciate your kind help.
>
> Best,
> Yue
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
More information about the llvm-dev
mailing list