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

📄 camm_tpipe.h

📁 基于Blas CLapck的.用过的人知道是干啥的
💻 H
字号:
/***************************************					$Header: /cvsroot/math-atlas/AtlasBase/kernel/CammMaguire/camm_tpipe.h,v 1.2 2003/10/18 18:13:30 yycamm Exp $					***************************************//* #ifndef CAMM_TPIPE_H *//* #define CAMM_TPIPE_H */    /*+ To stop multiple inclusions. +*/#ifndef BITS#error BITS must be defined in camm_tpipe.h#endif#ifndef DIV#error DIV must be defined in camm_tpipe.h#endif#ifndef INC#error INC(a_) must be defined in camm_tpipe.h#endif#ifndef LR#error LR must be defined in camm_tpipe.h#endif#ifdef ALIGN#if defined(SREAL)     test(4,ax)      je(a2)      #undef KB#define KB ( 1 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(4)      sub(1,LR)      lab(a2)#endif#if defined(SREAL) || defined(DREAL)     test(8,ax)      je(a4)      test(-2,LR)      je(a4)#undef KB#define KB ( 2 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(8)      sub(2,LR)           lab(a4)#endif#endif/*      "movl %%edx,%%edi\n\t"  */     push(LR)     shr(BITS,LR)      shl(BITS,LR)      m(4,LR)      ra(ax,LR) #if defined(ALIGN) && ( defined(SCPLX) || defined(DCPLX) )     test(12,ax)     je(loopa)#endif#if !defined(ALIGN) || defined(SCPLX) || defined(DCPLX)#undef plq#define plq(a_,b_,c_) pl(a_,b_,c_)#undef puq#define puq(a_,b_,c_)  pu(a_,b_,c_)#undef plqx#define plqx(a_,b_,c_,d_,e_) plx(a_,b_,c_,d_,e_)#undef puqx#define puqx(a_,b_,c_,d_,e_)  pux(a_,b_,c_,d_,e_)#else#undef plq#define plq(a_,b_,c_) pla(a_,b_,c_)#undef puq#define puq(a_,b_,c_)  punt(a_,b_,c_)#undef plqx#define plqx(a_,b_,c_,d_,e_) plax(a_,b_,c_,d_,e_)#undef puqx#define puqx(a_,b_,c_,d_,e_)  puax(a_,b_,c_,d_,e_)#endif     align     lab(loop)      cmp(ax,LR)      je(stop)#undef KB#define KB ( (1 << BITS) /* / DIV */ )#include "camm_pipe3.h"     KB_block       INC(4*KB/**DIV*/)      jmp(loop)      lab(stop)     pop(LR)#if ( 1 << BITS ) > 128     test(128,LR)      je(64)#undef KB#define KB ( 128 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(512)           lab(64)#endif#if ( 1 << BITS ) > 64     test(64,LR)      je(32)#undef KB#define KB ( 64 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(256)      lab(32)#endif#if ( 1 << BITS ) > 32     test(32,LR)      je(16)#undef KB#define KB ( 32 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(128)      lab(16)#endif#if ( 1 << BITS ) > 16     test(16,LR)      je(8)#undef KB#define KB ( 16 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(64)      lab(8)#endif#if ( 1 << BITS ) > 8     test(8,LR)      je(4)#undef KB#define KB ( 8 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(32)      lab(4)#endif#if ( 1 << BITS ) > 4     test(4,LR)      je(2)#undef KB#define KB ( 4 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(16)      lab(2)#endif#if DIV != 4 && ( 1 << BITS ) > 2     test(2,LR)      je(1)#undef KB#define KB ( 2 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(8)      lab(1)#endif#if DIV == 1 && ( 1 << BITS ) > 1     test(1,LR)      je(end)#undef KB#define KB ( 1 /* / DIV */ )#include "camm_pipe3.h"     KB_block      lab(end)#endif#if defined (ALIGN) && ( defined(SCPLX) || defined(DCPLX) )     jmp(tend)#undef plq#define plq(a_,b_,c_) pla(a_,b_,c_)#undef puq#define puq(a_,b_,c_) punt(a_,b_,c_)#undef plqx#define plqx(a_,b_,c_,d_,e_) plax(a_,b_,c_,d_,e_)#undef puqx#define puqx(a_,b_,c_,d_,e_)  puax(a_,b_,c_,d_,e_)     align     lab(loopa)      cmp(ax,LR)      je(stopa)#undef KB#define KB ( (1 << BITS) /* / DIV */ )#include "camm_pipe3.h"     KB_block       INC(4*KB/**DIV*/)      jmp(loopa)      lab(stopa)     pop(LR)#if ( 1 << BITS ) > 128     test(128,LR)      je(64a)#undef KB#define KB ( 128 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(512)           lab(64a)#endif#if ( 1 << BITS ) > 64     test(64,LR)      je(32a)#undef KB#define KB ( 64 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(256)      lab(32a)#endif#if ( 1 << BITS ) > 32     test(32,LR)      je(16a)#undef KB#define KB ( 32 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(128)      lab(16a)#endif#if ( 1 << BITS ) > 16     test(16,LR)      je(8a)#undef KB#define KB ( 16 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(64)      lab(8a)#endif#if ( 1 << BITS ) > 8     test(8,LR)      je(4a)#undef KB#define KB ( 8 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(32)      lab(4a)#endif#if ( 1 << BITS ) > 4     test(4,LR)      je(2a)#undef KB#define KB ( 4 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(16)      lab(2a)#endif#if DIV != 4 && ( 1 << BITS ) > 2     test(2,LR)      je(1a)#undef KB#define KB ( 2 /* / DIV */ )#include "camm_pipe3.h"     KB_block      INC(8)      lab(1a)#endif#if DIV == 1 && ( 1 << BITS ) > 1     test(1,LR)      je(enda)#undef KB#define KB ( 1 /* / DIV */ )#include "camm_pipe3.h"     KB_block      lab(enda)#endif     lab(tend)#endif/* #endif */ /* CAMM_TPIPE_H */

⌨️ 快捷键说明

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