[LLVMdev] trying to generate a simple inline asm

reed kotler rkotler at mips.com
Sun Apr 21 03:10:50 PDT 2013


I'm trying to just emit simple inline assembler (no constraints, inputs, 
etc.)

Can anyone point me to an example of this..?

This is corresponding to:

   __asm__ ("mfc1 $4,$f12");


This is what I tried but it's not correct.

       std::vector<llvm::Type *> AsmArgTypes;
       llvm::FunctionType *AsmFTy =
llvm::FunctionType::get(Type::getVoidTy(FStub->getContext()),
                                 AsmArgTypes, false);
       llvm::InlineAsm *IA =
         llvm::InlineAsm::get(AsmFTy, "mfc1 $$4,$$f12", "", true,
                              /* IsAlignStack */ false,
                              llvm::InlineAsm::AD_Intel);
       CallInst::Create(IA, BB);

Probably something stupid I'm doing. I'm debugging now but maybe someone 
knows the answer.

TIA.

Reed







More information about the llvm-dev mailing list