If all you do is call function once a frame (maybe a few) from one dll to another, then you won't see any performance differences. If you will call thousands and millions times per second, then there could be some measurable difference, but even then it will be small. As Casey has demonstrated you could even unload game dll every frame and load it from disk again, and even then game was running just fine.