Re: Build problem

Jan Kotas <[email protected]>
Newsgroups gmane.comp.windows.devel.dotnet.rotor
Message-ID <DD12668590C9274E9B2226FDBD02B98807EC81F7@red-msg-08.redmond.corp.microsoft.com>
The JIT and the EE communicate exclusively through ICorJitXXX
interfaces.
The build is not designed to allow direct calls between the JIT and the
EE.
Try to do the following:

In inc\corjit.h, add to the class ICorJitInfo:

  virtual int foo(int x);

In vm\jitinteface.h, add to the class CEEJitInfo:

   int foo(int x);

In vm\jitinterface.cpp, add:

int CEEJitInfo::foo(int x)
{  return x; }

In fjit\fjit.cpp, added in the method FJit::compileCEE_LDFLD.

jitInfo->foo(3);

-Jan

This posting is provided "AS IS" with no warranties, and confers no
rights.

-----Original Message-----
From: Discussion of the Rotor Shared Source CLI implementation
[mailto:[email protected]] On Behalf Of Yuan Yu
Sent: Tuesday, July 29, 2003 4:26 PM
To: [email protected]
Subject: [DOTNET-ROTOR] Build problem

I tried to add some code to src\vm, and call it in src\fjit, but
ran into linking problem. Here is what I did.

In inc\corjit.h, I added:

  int foo(int x);

In vm\jitinterface.cpp, I added:

  int foo(int x) { return x; }

In fjit\fjit.cpp, I added a call foo(3) in the method
FJit::compileCEE_LDFLD.

To build, I typed "build" in the src folder, but got the following
linking error:

Linking Executable - c:\yuan\proj\rotor\sscli\clr\bin\rotor_x86
\checked\mscorejt.dll for i386
fjit.obj : error LNK2019: unresolved external symbol "int
__stdcall foo(int)" (?foo@@YGHH@Z) referenced in function "private: enum
FJitResult __thiscall FJit::compileCEE_LDFLD(enum
opcode_t)" (?compileCEE_LDFLD@FJit@@AAE?
AW4FJitResult@@W4opcode_t@@@Z)

What was wrong with this?  Help is greatly appreciated!

-Yuan
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.