|
|
User login
Feeds |
unresolved external symbol _allmul & __allshr
|
|||||
| Tue, 2004-11-30 11:46 | |
|
Hi dudes,
While linking application for emulator I'm getting the __allmul & __allshr undefined external error. After going through the build log file i found that some of my inline function doing multiplication as return (long)((((__int64)a)*((__int64)b))>>15); and due to this 64 bit multiplication these undefined symbol is coming. I dont have have idea abt this but i think either its a compiler bug or ...... Pls pass thesolution if any one has gone through this prob before & have find solution. BR chandrashekhar |
|
Forum posts: 23
Forum posts: 122
How to solve it on symbian.
Any way thanks alot .
Forum posts: 23
#if defined(WINS) ... #endif
Forum posts: 122
Does this problem will not occur for target when i will compile for actual series 60 target? If it will come for target also then actually i like to solve it for both so for emulator it is ok to add dll but for target what i will do ?
BR
chandrashekhar
Forum posts: 122
#ifdef __WINS__
SYSTEMINCLUDE c:\windows\system32
#endif
LIBRARY msvcrt.dll
Forum posts: 83
c0deab1e
Forum posts: 122
Forum posts: 83
c0deab1e
Forum posts: 122
in symbian also this data type is available. Pls see the epoc32\include\e32def.h file line no 50. it is defined as long long.
#if defined(__CW32__)
#define __NO_CLASS_CONSTS__
#define IMPORT_C __declspec(dllexport)
#define EXPORT_C __declspec(dllexport)
#define TEMPLATE_SPECIALIZATION template<>
#define _asm asm
#ifndef __int64
#pragma longlong on
#define __int64 long long
#endif
#pragma exceptions off // no support for C++ exception handling
#pragma RTTI off // no support for C++ runtime type information
#endif
Forum posts: 83
c0deab1e
Forum posts: 122
Forum posts: 83
c0deab1e
Forum posts: 122
Thanks alot
chandrashekhar
Forum posts: 122
Still that problem does not solved so pls any body has idea how to do?
My function is as follows:
static INLINE long MUL32x32s32( long a, long b )
{
return (long )((((long long int)a)*((long long int)b))>>32);
}
it gives linking error as :
proj error LNK2019: unresolved external symbol __allmul referenced in function _MUL32x32s32
proj error LNK2019: unresolved external symbol __allshr referenced in function _MUL32x32s32
can any body help me out.
BR
chandrashekhar
Forum posts: 23
TInt32 Mul32x32s32(TInt32 a, TInt32 b)
{
TInt64 ret(a);
ret *=b;
ret >>=32;
return ret.Lo()
}
Maybe you could optimise it somehow...