⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 atlas_asm.h

📁 基于Blas CLapck的.用过的人知道是干啥的
💻 H
字号:
#ifndef ATLAS_ASM_H   #define ATLAS_ASM_H#ifndef Mjoin   #define Mjoin(pre, nam) my_join(pre, nam)   #define my_join(pre, nam) pre ## nam#endif#if defined(ATL_OS_WinNT) || defined(ATL_OS_Win9x) || defined(ATL_OS_OSX)   #define ATL_asmdecor(nam) Mjoin(_,nam)#elif defined(ATL_OS_AIX) && defined(ATL_GAS_PPC)   #define ATL_asmdecor(nam) Mjoin(.,nam)#elif !defined(ATL_OS_OSX) && defined(ATL_GAS_PPC) && defined(ATL_USE64BITS)   #define ATL_asmdecor(nam) Mjoin(.,nam)#else   #define  ATL_asmdecor(nam) nam#endif#ifdef ATL_GAS_PARISC   #ifdef ATL_OS_HPUX      #define ATL_HPUX_PARISC   #else      #define ATL_LINUX_PARISC   #endif#endif#ifdef ATL_GAS_PPC   #ifdef ATL_OS_OSX      #define ATL_AS_OSX_PPC   #elif defined(ATL_OS_AIX)      #define ATL_AS_AIX_PPC   #else      #define ATL_GAS_LINUX_PPC   #endif#endif#if defined(ATL_GAS_LINUX_PPC) || defined(ATL_AS_AIX_PPC)   #define r0 0   #define f0 0   #define r1 1   #define f1 1   #define r2 2   #define f2 2   #define r3 3   #define f3 3   #define r4 4   #define f4 4   #define r5 5   #define f5 5   #define r6 6   #define f6 6   #define r7 7   #define f7 7   #define r8 8   #define f8 8   #define r9 9   #define f9 9   #define r10 10   #define f10 10   #define r11 11   #define f11 11   #define r12 12   #define f12 12   #define r13 13   #define f13 13   #define r14 14   #define f14 14   #define r15 15   #define f15 15   #define r16 16   #define f16 16   #define r17 17   #define f17 17   #define r18 18   #define f18 18   #define r19 19   #define f19 19   #define r20 20   #define f20 20   #define r21 21   #define f21 21   #define r22 22   #define f22 22   #define r23 23   #define f23 23   #define r24 24   #define f24 24   #define r25 25   #define f25 25   #define r26 26   #define f26 26   #define r27 27   #define f27 27   #define r28 28   #define f28 28   #define r29 29   #define f29 29   #define r30 30   #define f30 30   #define r31 31   #define f31 31   #define cr0 0   #define cr1 1   #define cr2 2   #define cr3 3   #define cr4 4   #define cr5 5   #define cr6 6   #define cr7 7#endif#ifdef ATL_OS_OSX   #define ALIGN2 .align 1   #define ALIGN4 .align 2   #define ALIGN8 .align 3   #define ALIGN16 .align 4   #define ALIGN32 .align 5   #define ALIGN64 .align 6   #define ALIGN128 .align 7   #define global globl#else   #define ALIGN2 .align 2   #define ALIGN4 .align 4   #define ALIGN8 .align 8   #define ALIGN16 .align 16   #define ALIGN32 .align 32   #define ALIGN64 .align 64   #define ALIGN128 .align 128#endif#if defined(ATL_SSE1) && !defined(ATL_3DNow)   #define prefetchw prefetchnta#endif/* * Solaris doesn't allow division in integer expressions in assembly, but * many x86 kernels need to do $MB/mu; we work around this insanity with * this kludge */#if defined(ATL_DIV_NUM) && defined(ATL_DIV_DEN)   #if (ATL_DIV_NUM/ATL_DIV_DEN) == 0      #define ATL_DivAns 0   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 1      #define ATL_DivAns 1   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 2      #define ATL_DivAns 2   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 3      #define ATL_DivAns 3   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 4      #define ATL_DivAns 4   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 5      #define ATL_DivAns 5   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 6      #define ATL_DivAns 6   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 7      #define ATL_DivAns 7   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 8      #define ATL_DivAns 8   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 9      #define ATL_DivAns 9   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 10      #define ATL_DivAns 10   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 11      #define ATL_DivAns 11   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 12      #define ATL_DivAns 12   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 13      #define ATL_DivAns 13   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 14      #define ATL_DivAns 14   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 15      #define ATL_DivAns 15   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 16      #define ATL_DivAns 16   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 17      #define ATL_DivAns 17   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 18      #define ATL_DivAns 18   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 19      #define ATL_DivAns 19   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 20      #define ATL_DivAns 20   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 21      #define ATL_DivAns 21   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 22      #define ATL_DivAns 22   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 23      #define ATL_DivAns 23   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 24      #define ATL_DivAns 24   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 25      #define ATL_DivAns 25   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 26      #define ATL_DivAns 26   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 27      #define ATL_DivAns 27   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 28      #define ATL_DivAns 28   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 29      #define ATL_DivAns 29   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 30      #define ATL_DivAns 30   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 31      #define ATL_DivAns 31   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 32      #define ATL_DivAns 32   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 33      #define ATL_DivAns 33   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 34      #define ATL_DivAns 34   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 35      #define ATL_DivAns 35   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 36      #define ATL_DivAns 36   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 37      #define ATL_DivAns 37   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 38      #define ATL_DivAns 38   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 39      #define ATL_DivAns 39   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 40      #define ATL_DivAns 40   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 41      #define ATL_DivAns 41   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 42      #define ATL_DivAns 42   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 43      #define ATL_DivAns 43   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 44      #define ATL_DivAns 44   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 45      #define ATL_DivAns 45   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 46      #define ATL_DivAns 46   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 47      #define ATL_DivAns 47   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 48      #define ATL_DivAns 48   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 49      #define ATL_DivAns 49   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 50      #define ATL_DivAns 50   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 51      #define ATL_DivAns 51   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 52      #define ATL_DivAns 52   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 53      #define ATL_DivAns 53   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 54      #define ATL_DivAns 54   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 55      #define ATL_DivAns 55   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 56      #define ATL_DivAns 56   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 57      #define ATL_DivAns 57   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 58      #define ATL_DivAns 58   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 59      #define ATL_DivAns 59   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 60      #define ATL_DivAns 60   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 61      #define ATL_DivAns 61   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 62      #define ATL_DivAns 62   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 63      #define ATL_DivAns 63   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 64      #define ATL_DivAns 64   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 65      #define ATL_DivAns 65   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 66      #define ATL_DivAns 66   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 67      #define ATL_DivAns 67   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 68      #define ATL_DivAns 68   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 69      #define ATL_DivAns 69   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 70      #define ATL_DivAns 70   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 71      #define ATL_DivAns 71   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 72      #define ATL_DivAns 72   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 73      #define ATL_DivAns 73   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 74      #define ATL_DivAns 74   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 75      #define ATL_DivAns 75   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 76      #define ATL_DivAns 76   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 77      #define ATL_DivAns 77   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 78      #define ATL_DivAns 78   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 79      #define ATL_DivAns 79   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 80      #define ATL_DivAns 80   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 81      #define ATL_DivAns 81   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 82      #define ATL_DivAns 82   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 83      #define ATL_DivAns 83   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 84      #define ATL_DivAns 84   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 85      #define ATL_DivAns 85   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 86      #define ATL_DivAns 86   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 87      #define ATL_DivAns 87   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 88      #define ATL_DivAns 88   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 89      #define ATL_DivAns 89   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 90      #define ATL_DivAns 90   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 91      #define ATL_DivAns 91   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 92      #define ATL_DivAns 92   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 93      #define ATL_DivAns 93   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 94      #define ATL_DivAns 94   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 95      #define ATL_DivAns 95   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 96      #define ATL_DivAns 96   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 97      #define ATL_DivAns 97   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 98      #define ATL_DivAns 98   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 99      #define ATL_DivAns 99   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 100      #define ATL_DivAns 100   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 101      #define ATL_DivAns 101   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 102      #define ATL_DivAns 102   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 103      #define ATL_DivAns 103   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 104      #define ATL_DivAns 104   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 105      #define ATL_DivAns 105   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 106      #define ATL_DivAns 106   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 107      #define ATL_DivAns 107   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 108      #define ATL_DivAns 108   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 109      #define ATL_DivAns 109   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 110      #define ATL_DivAns 110   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 111      #define ATL_DivAns 111   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 112      #define ATL_DivAns 112   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 113      #define ATL_DivAns 113   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 114      #define ATL_DivAns 114   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 115      #define ATL_DivAns 115   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 116      #define ATL_DivAns 116   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 117      #define ATL_DivAns 117   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 118      #define ATL_DivAns 118   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 119      #define ATL_DivAns 119   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 120      #define ATL_DivAns 120   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 121      #define ATL_DivAns 121   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 122      #define ATL_DivAns 122   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 123      #define ATL_DivAns 123   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 124      #define ATL_DivAns 124   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 125      #define ATL_DivAns 125   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 126      #define ATL_DivAns 126   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 127      #define ATL_DivAns 127   #elif (ATL_DIV_NUM/ATL_DIV_DEN) == 128      #define ATL_DivAns 128   #endif#endif/* * For GNU/Linux, set no-execute bit for all ATLAS assembly */#if defined(ATL_OS_Linux) && defined(__ELF__) && defined(__GNUC__) && \    defined(ATL_SSE1).section .note.GNU-stack,"",%progbits#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -