这篇教程C++ vfp_panic函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中vfp_panic函数的典型用法代码示例。如果您正苦于以下问题:C++ vfp_panic函数的具体用法?C++ vfp_panic怎么用?C++ vfp_panic使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了vfp_panic函数的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: vfp_raise_exceptionsstatic void vfp_raise_exceptions(u32 exceptions, u32 inst, u32 fpscr, struct pt_regs *regs){ int si_code = 0; pr_debug("VFP: raising exceptions %08x/n", exceptions); if (exceptions == VFP_EXCEPTION_ERROR) { vfp_panic("unhandled bounce", inst); vfp_raise_sigfpe(0, regs); return; } if (exceptions & (FPSCR_N|FPSCR_Z|FPSCR_C|FPSCR_V)) fpscr &= ~(FPSCR_N|FPSCR_Z|FPSCR_C|FPSCR_V); fpscr |= exceptions; fmxr(FPSCR, fpscr);#define RAISE(stat,en,sig) / if (exceptions & stat && fpscr & en) / si_code = sig; RAISE(FPSCR_DZC, FPSCR_DZE, FPE_FLTDIV); RAISE(FPSCR_IXC, FPSCR_IXE, FPE_FLTRES); RAISE(FPSCR_UFC, FPSCR_UFE, FPE_FLTUND); RAISE(FPSCR_OFC, FPSCR_OFE, FPE_FLTOVF); RAISE(FPSCR_IOC, FPSCR_IOE, FPE_FLTINV); if (si_code) vfp_raise_sigfpe(si_code, regs);}
开发者ID:MarcoMas6,项目名称:android_kernel_htc_liberty-villec2,代码行数:32,
示例2: vfp_raise_exceptions/* * Process bitmask of exception conditions. */static void vfp_raise_exceptions(u32 exceptions, u32 inst, u32 fpscr, struct pt_regs *regs){ int si_code = 0; pr_debug("VFP: raising exceptions %08x/n", exceptions); if (exceptions == VFP_EXCEPTION_ERROR) { vfp_panic("unhandled bounce", inst); vfp_raise_sigfpe(0, regs); return; } /* * If any of the status flags are set, update the FPSCR. * Comparison instructions always return at least one of * these flags set. */ /* ARM spec does not define that H/W have to clear all condition flags when bouncing a floating-point compare instruction. The new support code only ORR the result flags on top of the original flags without clearing any flags. This does not make any sense to me, because clearing flags is also part of the compare result. So we clear these bits here to make it PASS */ if (exceptions & (FPSCR_N|FPSCR_Z|FPSCR_C|FPSCR_V)) fpscr &= ~(FPSCR_N|FPSCR_Z|FPSCR_C|FPSCR_V); fpscr |= exceptions; fmxr(FPSCR, fpscr);#define RAISE(stat,en,sig) / if (exceptions & stat && fpscr & en) / si_code = sig; /* * These are arranged in priority order, least to highest. */ RAISE(FPSCR_DZC, FPSCR_DZE, FPE_FLTDIV); RAISE(FPSCR_IXC, FPSCR_IXE, FPE_FLTRES); RAISE(FPSCR_UFC, FPSCR_UFE, FPE_FLTUND); RAISE(FPSCR_OFC, FPSCR_OFE, FPE_FLTOVF); RAISE(FPSCR_IOC, FPSCR_IOE, FPE_FLTINV); RAISE(FPSCR_IDC, FPSCR_IDE, FPE_FLTISN); if (si_code) vfp_raise_sigfpe(si_code, regs);}
开发者ID:cruisesha,项目名称:linux-2.6.32.9,代码行数:54,
示例3: vfp_raise_exceptions/* * Process bitmask of exception conditions. */static void vfp_raise_exceptions(u32 exceptions, u32 inst, u32 fpscr, struct pt_regs *regs){ int si_code = 0; pr_debug("VFP: raising exceptions %08x/n", exceptions); if (exceptions == VFP_EXCEPTION_ERROR) { vfp_panic("unhandled bounce", inst); vfp_raise_sigfpe(0, regs); return; } /* * If any of the status flags are set, update the FPSCR. * Comparison instructions always return at least one of * these flags set. */ if (exceptions & (FPSCR_N|FPSCR_Z|FPSCR_C|FPSCR_V)) fpscr &= ~(FPSCR_N|FPSCR_Z|FPSCR_C|FPSCR_V); fpscr |= exceptions; fmxr(FPSCR, fpscr);#define RAISE(stat,en,sig) / if (exceptions & stat && fpscr & en) / si_code = sig; /* * These are arranged in priority order, least to highest. */ RAISE(FPSCR_DZC, FPSCR_DZE, FPE_FLTDIV); RAISE(FPSCR_IXC, FPSCR_IXE, FPE_FLTRES); RAISE(FPSCR_UFC, FPSCR_UFE, FPE_FLTUND); RAISE(FPSCR_OFC, FPSCR_OFE, FPE_FLTOVF); RAISE(FPSCR_IOC, FPSCR_IOE, FPE_FLTINV); RAISE(FPSCR_IDC, FPSCR_IDE, FPE_FLTISN); if (si_code) vfp_raise_sigfpe(si_code, regs);}
开发者ID:ingmar-k,项目名称:Buffalo-Linkstation-Kirkwood-Kernel,代码行数:44,
注:本文中的vfp_panic函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ vfp_pm_init函数代码示例 C++ vfp_enable函数代码示例 |