64-bit

SSE optimized emulation of 64-bit integers

天大地大妈咪最大 提交于 2020-07-04 13:08:56
问题 For a hobby project I'm working on, I need to emulate certain 64-bit integer operations on a x86 CPU, and it needs to be fast . Currently, I'm doing this via MMX instructions, but that's really a pain to work with, because I have to flush the fp register state all the time (and because most MMX instructions deal with signed integers, and I need unsigned behavior). So I'm wondering if the SSE/optimization gurus here on SO can come up with a better implementation using SSE. The operations I

Cygwin 64-bit cannot early-bind to DLL created by MSVC , giving __cxa_atexit error

风格不统一 提交于 2020-06-16 17:02:48
问题 Here is the C++ program compiled by up-to-date Cygwin64 (gcc/x86_84-pc-cygwin/9.3.0): extern "C" __declspec(dllimport) void foo(void); int main(void) { foo(); return 0; } with commandline: g++ -o mre.exe mre.cc /f/temp/simpledll/x64/Debug/simpledll.lib For SimpleDLL I created a new Windows C++ DLL using VS Community 2019, switched to x64 target, disabled PCH, and added simpledll.cpp: extern "C" __declspec(dllexport) void foo(void); void foo(void) { MessageBoxA(NULL, "In simpledll foo", "Title

Cygwin 64-bit cannot early-bind to DLL created by MSVC , giving __cxa_atexit error

て烟熏妆下的殇ゞ 提交于 2020-06-16 17:01:45
问题 Here is the C++ program compiled by up-to-date Cygwin64 (gcc/x86_84-pc-cygwin/9.3.0): extern "C" __declspec(dllimport) void foo(void); int main(void) { foo(); return 0; } with commandline: g++ -o mre.exe mre.cc /f/temp/simpledll/x64/Debug/simpledll.lib For SimpleDLL I created a new Windows C++ DLL using VS Community 2019, switched to x64 target, disabled PCH, and added simpledll.cpp: extern "C" __declspec(dllexport) void foo(void); void foo(void) { MessageBoxA(NULL, "In simpledll foo", "Title

Cygwin 64-bit cannot early-bind to DLL created by MSVC , giving __cxa_atexit error

风流意气都作罢 提交于 2020-06-16 17:01:18
问题 Here is the C++ program compiled by up-to-date Cygwin64 (gcc/x86_84-pc-cygwin/9.3.0): extern "C" __declspec(dllimport) void foo(void); int main(void) { foo(); return 0; } with commandline: g++ -o mre.exe mre.cc /f/temp/simpledll/x64/Debug/simpledll.lib For SimpleDLL I created a new Windows C++ DLL using VS Community 2019, switched to x64 target, disabled PCH, and added simpledll.cpp: extern "C" __declspec(dllexport) void foo(void); void foo(void) { MessageBoxA(NULL, "In simpledll foo", "Title

Visual Studio - Finding which modules are causing C1905 (processor incompatibility)

∥☆過路亽.° 提交于 2020-06-11 16:53:46
问题 I'm attempting to make an x64 build of a project with Visual Studio 2005. It's currently failing with linker error C1905, 'Front end and back end not compatible (must target same processor).' From what I gather, this is essentially saying that my x64 build is attempting to link with x86 modules. Unfortunately, this project links with a lot of different libraries. I'm not sure which is the one causing the problem. Is there any way to get more information out of Visual Studio? 回答1: First, check

Incompatible pointer to integer conversion assigning to 'u32' (aka 'unsigned int') from 'struct net *'

喜夏-厌秋 提交于 2020-06-01 06:57:08
问题 What I want: To add a network namespace option to execsnoop bcc tool to trace only the logs with specified network namespace just like we have filter PID option in many other bcc tools. For eg: execsnoop -N "ns_id" I am using linux kernel structures to retrieve namespace id net = task->nsproxy->net_ns; and need to assign the retrieved ns to data.netns which is u32 int. What I am doing: int syscall__execve(struct pt_regs *ctx, const char __user *filename, const char __user *const __user *_

ld64 segprot on MacOS Catalina not working?

ⅰ亾dé卋堺 提交于 2020-06-01 04:06:04
问题 I want to create a binary on MacOS Catalina (64 bit) with a data segment that can be made executable (see here for details) but is not executable from the start. I make my binary with gcc -nostdlib -segprot __DATA rwx rw- .... I also created an object file with gcc and then called ld directly. The ld version is $ ld -v @(#)PROGRAM:ld PROJECT:ld64-530 BUILD 18:57:17 Dec 13 2019 configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m

ld64 segprot on MacOS Catalina not working?

感情迁移 提交于 2020-06-01 04:03:07
问题 I want to create a binary on MacOS Catalina (64 bit) with a data segment that can be made executable (see here for details) but is not executable from the start. I make my binary with gcc -nostdlib -segprot __DATA rwx rw- .... I also created an object file with gcc and then called ld directly. The ld version is $ ld -v @(#)PROGRAM:ld PROJECT:ld64-530 BUILD 18:57:17 Dec 13 2019 configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m

Java: How does the VM handle a 64bit `long` on a 32bit processor

房东的猫 提交于 2020-05-25 04:28:11
问题 How does the JVM handle a primitive "long", which is 64bits, on a 32bit processor? Can it utilise mulitple cores in parallel when on a Multi-Core 32bit machine? How much slower are 64bit operations on a 32bit machine? 回答1: It may use multiple cores to run different threads, but it does not use them in parallel for 64 bit calculations. A 64 bit long is basically stored as two 32 bit ints. In order to add them, two additions are needed, keeping track of the carry bit. Multiplication is kind of

SQLConfigDataSource does not add System DSN for 64-bit drivers

妖精的绣舞 提交于 2020-05-09 07:18:11
问题 I load the odbccp32.dll from System32 and even tried to use from SysWow64 . I use SQLConfigDataSource function to configure my System DSN for specified Driver. This function successfully configure drivers which are 32-bit, but does not do the same for 64-bit drivers. Does this dll only works for drivers which are 32-bit? When I ran ODBC Administrator tool (64-bit) I am able to see the 64-bit drivers and add them manually to System DSN, but I cannot do this using this DLL . 回答1: Only 64-bit