|
|
@ -60,30 +60,6 @@ void *alloca (size_t); |
|
|
|
#include "ADL_SDK/adl_sdk.h" |
|
|
|
#include "ADL_SDK/adl_sdk.h" |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#ifdef __SSE2__ |
|
|
|
|
|
|
|
#define WANT_SSE2_4WAY 1 |
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifdef __ALTIVEC__ |
|
|
|
|
|
|
|
#define WANT_ALTIVEC_4WAY 1 |
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if defined(__i386__) && defined(HAS_YASM) && defined(__SSE2__) |
|
|
|
|
|
|
|
#define WANT_X8632_SSE2 1 |
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if (defined(__i386__) || defined(__x86_64__)) && !defined(__APPLE__) |
|
|
|
|
|
|
|
#define WANT_VIA_PADLOCK 1 |
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if defined(__x86_64__) && defined(HAS_YASM) |
|
|
|
|
|
|
|
#define WANT_X8664_SSE2 1 |
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if defined(__x86_64__) && defined(HAS_YASM) |
|
|
|
|
|
|
|
#define WANT_X8664_SSE4 1 |
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if !defined(WIN32) && ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) |
|
|
|
#if !defined(WIN32) && ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) |
|
|
|
#define bswap_16 __builtin_bswap16 |
|
|
|
#define bswap_16 __builtin_bswap16 |
|
|
|
#define bswap_32 __builtin_bswap32 |
|
|
|
#define bswap_32 __builtin_bswap32 |
|
|
@ -157,19 +133,6 @@ enum { |
|
|
|
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) |
|
|
|
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
enum sha256_algos { |
|
|
|
|
|
|
|
ALGO_C, /* plain C */ |
|
|
|
|
|
|
|
ALGO_4WAY, /* parallel SSE2 */ |
|
|
|
|
|
|
|
ALGO_VIA, /* VIA padlock */ |
|
|
|
|
|
|
|
ALGO_CRYPTOPP, /* Crypto++ (C) */ |
|
|
|
|
|
|
|
ALGO_CRYPTOPP_ASM32, /* Crypto++ 32-bit assembly */ |
|
|
|
|
|
|
|
ALGO_SSE2_32, /* SSE2 for x86_32 */ |
|
|
|
|
|
|
|
ALGO_SSE2_64, /* SSE2 for x86_64 */ |
|
|
|
|
|
|
|
ALGO_SSE4_64, /* SSE4 for x86_64 */ |
|
|
|
|
|
|
|
ALGO_ALTIVEC_4WAY, /* parallel Altivec */ |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
enum alive { |
|
|
|
enum alive { |
|
|
|
LIFE_WELL, |
|
|
|
LIFE_WELL, |
|
|
|
LIFE_SICK, |
|
|
|
LIFE_SICK, |
|
|
@ -473,56 +436,6 @@ typedef bool (*sha256_func)(int thr_id, const unsigned char *pmidstate, |
|
|
|
uint32_t *last_nonce, |
|
|
|
uint32_t *last_nonce, |
|
|
|
uint32_t nonce); |
|
|
|
uint32_t nonce); |
|
|
|
|
|
|
|
|
|
|
|
extern bool ScanHash_4WaySSE2(int, const unsigned char *pmidstate, |
|
|
|
|
|
|
|
unsigned char *pdata, unsigned char *phash1, unsigned char *phash, |
|
|
|
|
|
|
|
const unsigned char *ptarget, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, uint32_t nonce); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern bool ScanHash_altivec_4way(int thr_id, const unsigned char *pmidstate, |
|
|
|
|
|
|
|
unsigned char *pdata, |
|
|
|
|
|
|
|
unsigned char *phash1, unsigned char *phash, |
|
|
|
|
|
|
|
const unsigned char *ptarget, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, uint32_t nonce); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern bool scanhash_via(int, const unsigned char *pmidstate, |
|
|
|
|
|
|
|
unsigned char *pdata, |
|
|
|
|
|
|
|
unsigned char *phash1, unsigned char *phash, |
|
|
|
|
|
|
|
const unsigned char *target, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, uint32_t n); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern bool scanhash_c(int, const unsigned char *midstate, unsigned char *data, |
|
|
|
|
|
|
|
unsigned char *hash1, unsigned char *hash, |
|
|
|
|
|
|
|
const unsigned char *target, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, uint32_t n); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern bool scanhash_cryptopp(int, const unsigned char *midstate,unsigned char *data, |
|
|
|
|
|
|
|
unsigned char *hash1, unsigned char *hash, |
|
|
|
|
|
|
|
const unsigned char *target, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, uint32_t n); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern bool scanhash_asm32(int, const unsigned char *midstate,unsigned char *data, |
|
|
|
|
|
|
|
unsigned char *hash1, unsigned char *hash, |
|
|
|
|
|
|
|
const unsigned char *target, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, uint32_t nonce); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern bool scanhash_sse2_64(int, const unsigned char *pmidstate, unsigned char *pdata, |
|
|
|
|
|
|
|
unsigned char *phash1, unsigned char *phash, |
|
|
|
|
|
|
|
const unsigned char *ptarget, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, |
|
|
|
|
|
|
|
uint32_t nonce); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern bool scanhash_sse4_64(int, const unsigned char *pmidstate, unsigned char *pdata, |
|
|
|
|
|
|
|
unsigned char *phash1, unsigned char *phash, |
|
|
|
|
|
|
|
const unsigned char *ptarget, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, |
|
|
|
|
|
|
|
uint32_t nonce); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern bool scanhash_sse2_32(int, const unsigned char *pmidstate, unsigned char *pdata, |
|
|
|
|
|
|
|
unsigned char *phash1, unsigned char *phash, |
|
|
|
|
|
|
|
const unsigned char *ptarget, |
|
|
|
|
|
|
|
uint32_t max_nonce, uint32_t *last_nonce, |
|
|
|
|
|
|
|
uint32_t nonce); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern int |
|
|
|
extern int |
|
|
|
timeval_subtract (struct timeval *result, struct timeval *x, struct timeval *y); |
|
|
|
timeval_subtract (struct timeval *result, struct timeval *x, struct timeval *y); |
|
|
|
|
|
|
|
|
|
|
@ -542,9 +455,6 @@ extern void kill_work(void); |
|
|
|
extern void reinit_device(struct cgpu_info *cgpu); |
|
|
|
extern void reinit_device(struct cgpu_info *cgpu); |
|
|
|
|
|
|
|
|
|
|
|
#ifdef HAVE_ADL |
|
|
|
#ifdef HAVE_ADL |
|
|
|
extern float gpu_temp(int gpu); |
|
|
|
|
|
|
|
extern int gpu_fanspeed(int gpu); |
|
|
|
|
|
|
|
extern int gpu_fanpercent(int gpu); |
|
|
|
|
|
|
|
extern bool gpu_stats(int gpu, float *temp, int *engineclock, int *memclock, float *vddc, int *activity, int *fanspeed, int *fanpercent, int *powertune); |
|
|
|
extern bool gpu_stats(int gpu, float *temp, int *engineclock, int *memclock, float *vddc, int *activity, int *fanspeed, int *fanpercent, int *powertune); |
|
|
|
extern int set_fanspeed(int gpu, int iFanSpeed); |
|
|
|
extern int set_fanspeed(int gpu, int iFanSpeed); |
|
|
|
extern int set_vddc(int gpu, float fVddc); |
|
|
|
extern int set_vddc(int gpu, float fVddc); |
|
|
|