草庐IT

uboot移植

全部标签

c++ - 在 32 位架构上优化可移植的 128 位整数移位

在业余时间,我一直在研究一个实用程序库,其中包括支持有符号/无符号128位整数。该库在某些情况下使用cpu-dispatching来利用simd指令,但需要可移植的后备,以便它可以在其他任何地方运行。最近我实现了128位移位的可移植回退。它工作正常并且运行速度相当快,但它没有我希望的那么快,尤其是在32位架构上。这是一个包含所有相关类型和功能的精简版本(包括64位版本以确保完整性):typedefuint32_tUInt32;typedefint32_tInt32;typedefuint64_tUInt64;typedefint64_tInt64;//Returns0xFFFFFFFF

c++ - 移植旧代码时如何处理类名冲突?

我正在尝试将一个旧库(据我所知不使用namespace)移植到现代编译器。我的目标之一无法区分System::TObject和::TObject(没有namespace)。System::TObject是编译器原生的。我试过一个using指令,即using::TObject;但这并没有做到。显而易见的解决方案是将所有原始库包装在一个命名空间中,然后按名称调用它——这样可以避免歧义。但这是最明智的解决方案吗?还有其他解决办法吗?添加命名空间需要更改一堆文件,我不知道以后是否会产生不必要的影响。 最佳答案 您可以按照Dib的建议进行操作

c++ - 如何(可移植地)使用 C++ 类层次结构和动态链接库

好吧,我知道可移植性不是C++的强项,但我必须让我的代码在Mac和Windows上运行。我想出了一个解决方案,但它并不完美,我很想看看是否有人可以提出更好的解决方案。我需要在几个DLL/bundle中使用一个类层次结构——例如,我有一个抽象基类BaseClass;然后我扫描给定的DLL目录,对于每个DLL,我寻找工厂方法BaseClass*CreateObject();-它返回一个“BaseClass”。我有一个“共享头文件”,它包含在“主可执行文件”和DLL中,它像这样声明BaseClass#ifdef_MAC#defineDECLSPEC#else#ifdefCOMPILING_D

c++ - 可移植 C++ 原子交换(Windows - GNU/Linux - MacOSX)

是否有免费的可移植(Windows、GNU/Linux和MacOSX)库提供无锁原子交换功能?如果没有,将如何针对这些平台中的每一个实现?(使用VC++或g++的x86)谢谢 最佳答案 有一个lock-free图书馆待审boost.另外,如果您深入研究boostsmartpointers的来源在库中,您会发现为多个平台内联的原子操作。另一个-英特尔ThreadingBuildingBlocks实现了atomic模板。 关于c++-可移植C++原子交换(Windows-GNU/Linux-

c++ - 将现有的 C++ 代码移植到 R

我想移植SpecialKPokerHandevaluator至R.我认为使用Rcpppackage应该相对容易,但我不知道从哪里开始。现有教程似乎侧重于开发用于R的新C++代码。在本例中,IhaveC++thatsolvesaproblem,我想在R中以最少的麻烦使用此代码。如果代码是一个独立的函数,我可以使用inline即时编译和链接它。,但这在这里不起作用。我想这个问题有两个部分:我是否需要对C++源代码进行任何更改以使其与Rcpp兼容?我如何从R中调用这段代码,因为它不小,我可以使用动态编译和链接的独立函数内联?我也愿意使用Java、python或objective-C版本的求值

c++ - 编写可移植的 SSE/AVX 版本的 std::copysign

我目前正在使用SSE和AVX内在函数编写QR分解(线性系统求解器)的矢量化版本。其中一个子步骤需要选择与另一个值相反/相等的值的符号。在串行版本中,我为此使用了std::copysign。现在我想为SSE/AVX寄存器创建一个类似的函数。不幸的是,STL为此使用了一个内置函数,所以我不能只复制代码并将其转换为SSE/AVX指令。我还没有尝试过(所以我现在没有代码可以展示),但我的简单方法是创建一个所有值都设置为-0.0的寄存器,以便只设置有符号位。然后我会在源上使用AND操作来查明它的符号是否已设置。此操作的结果将是0.0或-0.0,具体取决于源的符号。结果,我将创建一个位掩码(使用逻

c++ - __COUNTER__ 宏是否可移植?

我有一段代码使用__COUNTER__宏来为变量生成唯一的名称。此代码可移植吗?我知道GCC和MSVS支持它。其他编译器呢?宏是由标准定义的吗(据我所知,在C++14之前它不是)。 最佳答案 这绝对不标准。这是一个编译器扩展(GNUCextensions)ThecommonpredefinedmacrosareGNUCextensions.和一个Microsoft-specificone,Microsoft-SpecificPredefinedMacros:__COUNTER__还支持clang作为语言扩展。Thestandardd

iphone - 将 WebGL 游戏移植到 iPhone 的原生 OpenGL?

我们正在开发一款网络游戏,该游戏的两个最大部分都使用了WebGL。使用HTML/CSS太慢且受限太多,因此不在讨论之列。问题是,iOS目前还不公开支持WebGL,仅在iAd上支持。我猜测,一旦他们和微软声称已解决的安全问题得到解决并且看起来足够稳定,Apple最终会支持它。问题是,如果Apple在发布下一个主要iOS版本时不这样做,那么我们手中将有一个无法运行的移动WebGL游戏。浪费6个月的开发和测试。那么,问题:如果是这样,那么将游戏的WebGL部分移植到nativeiPhoneOpenGL的可行性如何(就时间而言)?移植的时间恐怕比游戏本身的开发时间还要长。我在StackOver

iphone - 将现有的 c 代码移植到 iOS/iPhone

我有一个用C语言编写的视频解码器的源代码。代码已在linux操作系统下成功编译执行。后来我还在ndk和JNI的帮助下将这个解码器移植到一个android应用程序中。现在我的要求是将此应用程序移植到iOS(适用于iPhone)上。我的查询是:是否有像ndk和jni这样的工具可以将此代码移植到iOS?此代码是否存在任何可靠性问题?我尝试用谷歌搜索相同的内容,但无法获得足够多的信息来继续移植程序。如有任何关于遗嘱的建议或有用的链接,我们将不胜感激。请就此回复。提前致谢。 最佳答案 如上所述,是的,所有C代码在Objective-C中都是有

c# - Xamarin.Forms(可移植)解决方案中的 Xamarin.Mac 项目

我正在VisualStudio2015中设置新的Xamarin.Forms(可移植)解决方案。目标是在Windows、OSX、iOS和Android上部署应用程序。到目前为止,在解决方案中我看到了项目XamarinApp(Portable)、XamarinApp.Droid、XamarinApp.iOS和XamarinApp.UWP。有没有办法将XamarinApp.Mac项目添加到解决方案Xamarin.Forms解决方案中?或者所有Xamarin.Mac项目都必须使用XamarinStudio/VisualStudioforMac在Mac上开发,因为我看到使用此方法创建的独立项目。