├── JHA ├── .dirstamp ├── .deps │ └── .dirstamp ├── jackpotcoin.cu ├── cuda_jha_keccak512.cu └── cuda_jha_compactionTest.cu ├── NEWS ├── quark ├── .dirstamp ├── .deps │ └── .dirstamp ├── animecoin.cu ├── quarkcoin.cu ├── cuda_bmw512.cu ├── cuda_jh512.cu ├── cuda_skein512.cu ├── cuda_quark_blake512.cu ├── cuda_quark_checkhash.cu ├── cuda_quark_groestl512.cu ├── cuda_quark_keccak512.cu └── cuda_quark_compactionTest.cu ├── AUTHORS ├── COPYING ├── ChangeLog ├── compat ├── inttypes.h ├── unistd.h ├── stdbool.h ├── Makefile.am ├── sys │ └── time.h ├── jansson │ ├── Makefile.am │ ├── util.h │ ├── utf.h │ └── strbuffer.h └── thrust │ ├── detail │ ├── swap.inl │ ├── config.h │ ├── use_default.h │ ├── config │ │ ├── simple_defines.h │ │ ├── forceinline.h │ │ ├── hd_warning_disable.h │ │ ├── debug.h │ │ └── host_device.h │ ├── reference_forward_declaration.h │ ├── swap.h │ ├── allocator │ │ ├── destroy_range.h │ │ ├── default_construct_range.h │ │ └── fill_construct_range.h │ ├── functional │ │ ├── operators.h │ │ └── placeholder.h │ ├── raw_pointer_cast.h │ ├── host_vector.inl │ ├── advance.inl │ ├── device_vector.inl │ ├── type_traits │ │ ├── is_metafunction_defined.h │ │ ├── iterator │ │ │ └── is_discard_iterator.h │ │ └── has_nested_type.h │ ├── distance.inl │ └── device_free.inl │ ├── system │ ├── cpp │ │ └── detail │ │ │ ├── swap_ranges.h │ │ │ ├── transform.h │ │ │ ├── count.h │ │ │ ├── equal.h │ │ │ ├── fill.h │ │ │ ├── gather.h │ │ │ ├── generate.h │ │ │ ├── logical.h │ │ │ ├── mismatch.h │ │ │ ├── replace.h │ │ │ ├── reverse.h │ │ │ ├── scatter.h │ │ │ ├── sequence.h │ │ │ ├── tabulate.h │ │ │ ├── inner_product.h │ │ │ ├── temporary_buffer.h │ │ │ ├── transform_reduce.h │ │ │ ├── transform_scan.h │ │ │ ├── uninitialized_copy.h │ │ │ ├── uninitialized_fill.h │ │ │ ├── iter_swap.h │ │ │ ├── get_value.h │ │ │ └── assign_value.h │ ├── cuda │ │ └── detail │ │ │ ├── transform.h │ │ │ ├── swap_ranges.h │ │ │ ├── count.h │ │ │ ├── equal.h │ │ │ ├── extrema.h │ │ │ ├── find.h │ │ │ ├── gather.h │ │ │ ├── logical.h │ │ │ ├── remove.h │ │ │ ├── replace.h │ │ │ ├── reverse.h │ │ │ ├── scatter.h │ │ │ ├── unique.h │ │ │ ├── generate.h │ │ │ ├── mismatch.h │ │ │ ├── partition.h │ │ │ ├── scan_by_key.h │ │ │ ├── sequence.h │ │ │ ├── tabulate.h │ │ │ ├── binary_search.h │ │ │ ├── inner_product.h │ │ │ ├── temporary_buffer.h │ │ │ ├── transform_reduce.h │ │ │ ├── transform_scan.h │ │ │ ├── unique_by_key.h │ │ │ ├── uninitialized_copy.h │ │ │ ├── uninitialized_fill.h │ │ │ ├── synchronize.h │ │ │ └── guarded_cuda_runtime_api.h │ ├── omp │ │ └── detail │ │ │ ├── temporary_buffer.h │ │ │ ├── count.h │ │ │ ├── equal.h │ │ │ ├── fill.h │ │ │ ├── merge.h │ │ │ ├── scan.h │ │ │ ├── gather.h │ │ │ ├── logical.h │ │ │ ├── reverse.h │ │ │ ├── transform.h │ │ │ ├── generate.h │ │ │ ├── mismatch.h │ │ │ ├── sequence.h │ │ │ ├── swap_ranges.h │ │ │ ├── tabulate.h │ │ │ ├── get_value.h │ │ │ ├── iter_swap.h │ │ │ ├── replace.h │ │ │ ├── scatter.h │ │ │ ├── assign_value.h │ │ │ ├── scan_by_key.h │ │ │ ├── inner_product.h │ │ │ ├── malloc_and_free.h │ │ │ ├── set_operations.h │ │ │ ├── transform_scan.h │ │ │ ├── transform_reduce.h │ │ │ ├── uninitialized_copy.h │ │ │ └── uninitialized_fill.h │ ├── tbb │ │ └── detail │ │ │ ├── temporary_buffer.h │ │ │ ├── count.h │ │ │ ├── equal.h │ │ │ ├── fill.h │ │ │ ├── gather.h │ │ │ ├── logical.h │ │ │ ├── reverse.h │ │ │ ├── transform.h │ │ │ ├── generate.h │ │ │ ├── mismatch.h │ │ │ ├── sequence.h │ │ │ ├── swap_ranges.h │ │ │ ├── tabulate.h │ │ │ ├── get_value.h │ │ │ ├── iter_swap.h │ │ │ ├── replace.h │ │ │ ├── scatter.h │ │ │ ├── assign_value.h │ │ │ ├── scan_by_key.h │ │ │ ├── binary_search.h │ │ │ ├── inner_product.h │ │ │ ├── malloc_and_free.h │ │ │ ├── set_operations.h │ │ │ ├── transform_scan.h │ │ │ ├── transform_reduce.h │ │ │ ├── uninitialized_copy.h │ │ │ └── uninitialized_fill.h │ └── detail │ │ ├── generic │ │ ├── advance.h │ │ ├── distance.h │ │ └── tag.h │ │ └── adl │ │ ├── copy.h │ │ ├── fill.h │ │ ├── find.h │ │ ├── scan.h │ │ ├── sort.h │ │ ├── count.h │ │ ├── equal.h │ │ ├── merge.h │ │ ├── reduce.h │ │ ├── remove.h │ │ ├── unique.h │ │ ├── logical.h │ │ ├── replace.h │ │ ├── reverse.h │ │ ├── scatter.h │ │ ├── extrema.h │ │ ├── gather.h │ │ ├── for_each.h │ │ ├── generate.h │ │ ├── mismatch.h │ │ ├── sequence.h │ │ ├── tabulate.h │ │ ├── get_value.h │ │ ├── iter_swap.h │ │ ├── partition.h │ │ ├── transform.h │ │ ├── copy_if.h │ │ ├── scan_by_key.h │ │ ├── swap_ranges.h │ │ ├── assign_value.h │ │ ├── binary_search.h │ │ ├── inner_product.h │ │ ├── reduce_by_key.h │ │ ├── unique_by_key.h │ │ ├── set_operations.h │ │ └── transform_scan.h │ ├── iterator │ └── detail │ │ ├── any_system_tag.h │ │ ├── iterator_traversal_tags.h │ │ ├── reverse_iterator_base.h │ │ ├── host_system_tag.h │ │ ├── device_system_tag.h │ │ └── distance_from_result.h │ └── random │ └── detail │ └── linear_feedback_shift_engine_wordmask.h ├── x11 ├── x11.cu ├── cuda_x11_echo.cu ├── cuda_x11_simd512.cu ├── cuda_x11_luffa512.cu ├── cuda_x11_cubehash512.cu └── cuda_x11_shavite512.cu ├── x13 ├── x13.cu ├── x14.cu ├── x15.cu ├── fresh.cu ├── whirlcoin.cu ├── cuda_shabal512.cu ├── cuda_whirlpool512.cu ├── cuda_x13_fugue512.cu └── cuda_x13_hamsi512.cu ├── cuda_helper.h ├── cuda_nist5.cu ├── autogen.sh ├── configure.sh ├── groestlcoin.cpp ├── heavy ├── heavy.cu ├── cuda_hefty1.cu ├── cuda_sha256.cu ├── cuda_blake512.cu ├── cuda_combine.cu ├── cuda_keccak512.cu ├── cuda_groestl512.cu ├── cuda_combine.h ├── cuda_blake512.h ├── cuda_hefty1.h ├── cuda_sha256.h ├── cuda_groestl512.h └── cuda_keccak512.h ├── qubit ├── qubit.cu └── qubit_luffa512.cu ├── cuda_fugue256.cu ├── myriadgroestl.cpp ├── cuda_groestlcoin.cu ├── README.md ├── cuda_myriadgroestl.cu ├── README ├── LICENSE ├── cuda_fugue256.h ├── cuda_groestlcoin.h ├── INSTALL ├── compat.h ├── files.txt └── ccminer.sln /JHA/.dirstamp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /NEWS: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /quark/.dirstamp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /JHA/.deps/.dirstamp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /quark/.deps/.dirstamp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | See README.txt 2 | -------------------------------------------------------------------------------- /COPYING: -------------------------------------------------------------------------------- 1 | See LICENSE.txt 2 | -------------------------------------------------------------------------------- /ChangeLog: -------------------------------------------------------------------------------- 1 | See README.txt 2 | -------------------------------------------------------------------------------- /compat/inttypes.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | -------------------------------------------------------------------------------- /compat/unistd.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "getopt/getopt.h" -------------------------------------------------------------------------------- /x11/x11.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x11/x11.cu -------------------------------------------------------------------------------- /x13/x13.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/x13.cu -------------------------------------------------------------------------------- /x13/x14.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/x14.cu -------------------------------------------------------------------------------- /x13/x15.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/x15.cu -------------------------------------------------------------------------------- /cuda_helper.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/cuda_helper.h -------------------------------------------------------------------------------- /cuda_nist5.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/cuda_nist5.cu -------------------------------------------------------------------------------- /x13/fresh.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/fresh.cu -------------------------------------------------------------------------------- /autogen.sh: -------------------------------------------------------------------------------- 1 | aclocal && autoheader && automake --add-missing --gnu --copy && autoconf 2 | -------------------------------------------------------------------------------- /configure.sh: -------------------------------------------------------------------------------- 1 | ./configure "CFLAGS=-O3" "CXXFLAGS=-O3" --with-cuda=/usr/local/cuda 2 | -------------------------------------------------------------------------------- /groestlcoin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/groestlcoin.cpp -------------------------------------------------------------------------------- /heavy/heavy.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/heavy/heavy.cu -------------------------------------------------------------------------------- /qubit/qubit.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/qubit/qubit.cu -------------------------------------------------------------------------------- /JHA/jackpotcoin.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/JHA/jackpotcoin.cu -------------------------------------------------------------------------------- /cuda_fugue256.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/cuda_fugue256.cu -------------------------------------------------------------------------------- /myriadgroestl.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/myriadgroestl.cpp -------------------------------------------------------------------------------- /quark/animecoin.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/animecoin.cu -------------------------------------------------------------------------------- /quark/quarkcoin.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/quarkcoin.cu -------------------------------------------------------------------------------- /x13/whirlcoin.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/whirlcoin.cu -------------------------------------------------------------------------------- /cuda_groestlcoin.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/cuda_groestlcoin.cu -------------------------------------------------------------------------------- /heavy/cuda_hefty1.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/heavy/cuda_hefty1.cu -------------------------------------------------------------------------------- /heavy/cuda_sha256.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/heavy/cuda_sha256.cu -------------------------------------------------------------------------------- /quark/cuda_bmw512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/cuda_bmw512.cu -------------------------------------------------------------------------------- /quark/cuda_jh512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/cuda_jh512.cu -------------------------------------------------------------------------------- /x11/cuda_x11_echo.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x11/cuda_x11_echo.cu -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ccminer 2 | ======= 3 | 4 | Christian Buchner's & Christian H.'s CUDA miner project 5 | -------------------------------------------------------------------------------- /cuda_myriadgroestl.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/cuda_myriadgroestl.cu -------------------------------------------------------------------------------- /heavy/cuda_blake512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/heavy/cuda_blake512.cu -------------------------------------------------------------------------------- /heavy/cuda_combine.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/heavy/cuda_combine.cu -------------------------------------------------------------------------------- /heavy/cuda_keccak512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/heavy/cuda_keccak512.cu -------------------------------------------------------------------------------- /quark/cuda_skein512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/cuda_skein512.cu -------------------------------------------------------------------------------- /qubit/qubit_luffa512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/qubit/qubit_luffa512.cu -------------------------------------------------------------------------------- /x11/cuda_x11_simd512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x11/cuda_x11_simd512.cu -------------------------------------------------------------------------------- /x13/cuda_shabal512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/cuda_shabal512.cu -------------------------------------------------------------------------------- /JHA/cuda_jha_keccak512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/JHA/cuda_jha_keccak512.cu -------------------------------------------------------------------------------- /compat/stdbool.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #define false 0 4 | #define true 1 5 | 6 | #define bool int 7 | -------------------------------------------------------------------------------- /heavy/cuda_groestl512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/heavy/cuda_groestl512.cu -------------------------------------------------------------------------------- /x11/cuda_x11_luffa512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x11/cuda_x11_luffa512.cu -------------------------------------------------------------------------------- /x13/cuda_whirlpool512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/cuda_whirlpool512.cu -------------------------------------------------------------------------------- /x13/cuda_x13_fugue512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/cuda_x13_fugue512.cu -------------------------------------------------------------------------------- /x13/cuda_x13_hamsi512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x13/cuda_x13_hamsi512.cu -------------------------------------------------------------------------------- /compat/Makefile.am: -------------------------------------------------------------------------------- 1 | 2 | if WANT_JANSSON 3 | SUBDIRS = jansson 4 | else 5 | SUBDIRS = 6 | endif 7 | 8 | -------------------------------------------------------------------------------- /quark/cuda_quark_blake512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/cuda_quark_blake512.cu -------------------------------------------------------------------------------- /x11/cuda_x11_cubehash512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x11/cuda_x11_cubehash512.cu -------------------------------------------------------------------------------- /x11/cuda_x11_shavite512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/x11/cuda_x11_shavite512.cu -------------------------------------------------------------------------------- /JHA/cuda_jha_compactionTest.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/JHA/cuda_jha_compactionTest.cu -------------------------------------------------------------------------------- /quark/cuda_quark_checkhash.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/cuda_quark_checkhash.cu -------------------------------------------------------------------------------- /quark/cuda_quark_groestl512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/cuda_quark_groestl512.cu -------------------------------------------------------------------------------- /quark/cuda_quark_keccak512.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/cuda_quark_keccak512.cu -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | 2 | A CUDA based miner for Heavycoin and Fuguecoin. For more information, take a look at README.txt 3 | 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | ccminer is available under the terms of the GNU Public License version 3. 2 | 3 | See LICENSE.TXT for details. 4 | -------------------------------------------------------------------------------- /quark/cuda_quark_compactionTest.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KBomba/ccminer-KBomba/HEAD/quark/cuda_quark_compactionTest.cu -------------------------------------------------------------------------------- /heavy/cuda_combine.h: -------------------------------------------------------------------------------- 1 | #ifndef _CUDA_COMBINE_H 2 | #define _CUDA_COMBINE_H 3 | 4 | void combine_cpu_init(int thr_id, int threads); 5 | void combine_cpu_hash(int thr_id, int threads, uint32_t startNounce, uint32_t *hash); 6 | 7 | #endif 8 | -------------------------------------------------------------------------------- /compat/sys/time.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #ifdef __cplusplus 3 | extern "C" 4 | { 5 | #endif 6 | int gettimeofday(struct timeval *tv, struct timezone *tz); 7 | void usleep(__int64 usec); 8 | #ifdef __cplusplus 9 | } 10 | #endif 11 | typedef __int64 useconds_t; 12 | -------------------------------------------------------------------------------- /heavy/cuda_blake512.h: -------------------------------------------------------------------------------- 1 | #ifndef _CUDA_BLAKE512_H 2 | #define _CUDA_BLAKE512_H 3 | 4 | void blake512_cpu_init(int thr_id, int threads); 5 | void blake512_cpu_setBlock(void *pdata, int len); 6 | void blake512_cpu_hash(int thr_id, int threads, uint32_t startNounce); 7 | #endif 8 | -------------------------------------------------------------------------------- /heavy/cuda_hefty1.h: -------------------------------------------------------------------------------- 1 | #ifndef _CUDA_HEFTY1_H 2 | #define _CUDA_HEFTY1_H 3 | 4 | void hefty_cpu_hash(int thr_id, int threads, int startNounce); 5 | void hefty_cpu_setBlock(int thr_id, int threads, void *data, int len); 6 | void hefty_cpu_init(int thr_id, int threads); 7 | 8 | #endif -------------------------------------------------------------------------------- /cuda_fugue256.h: -------------------------------------------------------------------------------- 1 | #ifndef _CUDA_FUGUE512_H 2 | #define _CUDA_FUGUE512_H 3 | 4 | void fugue256_cpu_hash(int thr_id, int threads, int startNounce, void *outputHashes, uint32_t *nounce); 5 | void fugue256_cpu_setBlock(int thr_id, void *data, void *pTargetIn); 6 | void fugue256_cpu_init(int thr_id, int threads); 7 | 8 | #endif 9 | -------------------------------------------------------------------------------- /cuda_groestlcoin.h: -------------------------------------------------------------------------------- 1 | #ifndef _CUDA_GROESTLCOIN_H 2 | #define _CUDA_GROESTLCOIN_H 3 | 4 | void groestlcoin_cpu_init(int thr_id, int threads); 5 | void groestlcoin_cpu_setBlock(int thr_id, void *data, void *pTargetIn); 6 | void groestlcoin_cpu_hash(int thr_id, int threads, uint32_t startNounce, void *outputHashes, uint32_t *nounce); 7 | 8 | #endif -------------------------------------------------------------------------------- /heavy/cuda_sha256.h: -------------------------------------------------------------------------------- 1 | #ifndef _CUDA_SHA256_H 2 | #define _CUDA_SHA256_H 3 | 4 | void sha256_cpu_init(int thr_id, int threads); 5 | void sha256_cpu_setBlock(void *data, int len); 6 | void sha256_cpu_hash(int thr_id, int threads, int startNounce); 7 | void sha256_cpu_copyHeftyHash(int thr_id, int threads, void *heftyHashes, int copy); 8 | #endif 9 | -------------------------------------------------------------------------------- /heavy/cuda_groestl512.h: -------------------------------------------------------------------------------- 1 | #ifndef _CUDA_GROESTL512_H 2 | #define _CUDA_GROESTL512_H 3 | 4 | void groestl512_cpu_init(int thr_id, int threads); 5 | void groestl512_cpu_copyHeftyHash(int thr_id, int threads, void *heftyHashes, int copy); 6 | void groestl512_cpu_setBlock(void *data, int len); 7 | void groestl512_cpu_hash(int thr_id, int threads, uint32_t startNounce); 8 | 9 | #endif -------------------------------------------------------------------------------- /heavy/cuda_keccak512.h: -------------------------------------------------------------------------------- 1 | #ifndef _CUDA_KECCAK512_H 2 | #define _CUDA_KECCAK512_H 3 | 4 | void keccak512_cpu_init(int thr_id, int threads); 5 | void keccak512_cpu_setBlock(void *data, int len); 6 | void keccak512_cpu_copyHeftyHash(int thr_id, int threads, void *heftyHashes, int copy); 7 | void keccak512_cpu_hash(int thr_id, int threads, uint32_t startNounce); 8 | 9 | #endif 10 | -------------------------------------------------------------------------------- /INSTALL: -------------------------------------------------------------------------------- 1 | 2 | It is advised to run ./autogen.sh before./configure (autoconf and automake 3 | need to be installed on your system for autogen.sh to work) 4 | 5 | ./configure has an option named --with-cuda that allows you to specify 6 | where your CUDA 5.5 toolkit is installed (usually /usr/local/cuda-5.5, 7 | but some distros may have a different default location) 8 | 9 | See README.txt 10 | -------------------------------------------------------------------------------- /compat/jansson/Makefile.am: -------------------------------------------------------------------------------- 1 | 2 | noinst_LIBRARIES = libjansson.a 3 | 4 | libjansson_a_SOURCES = \ 5 | config.h \ 6 | dump.c \ 7 | hashtable.c \ 8 | hashtable.h \ 9 | jansson.h \ 10 | jansson_private.h \ 11 | load.c \ 12 | strbuffer.c \ 13 | strbuffer.h \ 14 | utf.c \ 15 | utf.h \ 16 | util.h \ 17 | value.c 18 | 19 | -------------------------------------------------------------------------------- /compat/jansson/util.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009, 2010 Petri Lehtinen 3 | * 4 | * Jansson is free software; you can redistribute it and/or modify 5 | * it under the terms of the MIT license. See LICENSE for details. 6 | */ 7 | 8 | #ifndef UTIL_H 9 | #define UTIL_H 10 | 11 | #ifndef max 12 | #define max(a, b) ((a) > (b) ? (a) : (b)) 13 | #endif 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /compat.h: -------------------------------------------------------------------------------- 1 | #ifndef __COMPAT_H__ 2 | #define __COMPAT_H__ 3 | 4 | #ifdef WIN32 5 | 6 | #include 7 | 8 | static __inline void sleep(int secs) 9 | { 10 | Sleep(secs * 1000); 11 | } 12 | 13 | enum { 14 | PRIO_PROCESS = 0, 15 | }; 16 | 17 | static __inline int setpriority(int which, int who, int prio) 18 | { 19 | return -!SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_IDLE /*THREAD_PRIORITY_TIME_CRITICAL*/); 20 | } 21 | 22 | #endif /* WIN32 */ 23 | 24 | #endif /* __COMPAT_H__ */ 25 | -------------------------------------------------------------------------------- /files.txt: -------------------------------------------------------------------------------- 1 | blake512.cu 2 | blake.c 3 | combine.cu 4 | compat.h 5 | cpu-miner.c 6 | cpuminer-config.h 7 | cuda_blake512.h 8 | cuda_combine.h 9 | cuda_groestl512.h 10 | cuda_hefty1.h 11 | cuda_keccak512.h 12 | cuda_sha256.h 13 | elist.h 14 | groestl512.cu 15 | groestl.c 16 | heavy.c 17 | hefty1.c 18 | hefty1.cu 19 | hefty1.h 20 | keccak512.cu 21 | keccak.c 22 | miner.h 23 | scrypt.c 24 | sha256.cu 25 | sha2.c 26 | sph_blake.h 27 | sph_groestl.h 28 | sph_keccak.h 29 | sph_types.h 30 | util.c 31 | -------------------------------------------------------------------------------- /compat/thrust/detail/swap.inl: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cpp has no special swap_ranges 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cpp has no special transform 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cuda has no special transform 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cuda has no special swap_ranges 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/extrema.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/find.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/remove.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/unique.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/partition.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/detail/config.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | /*! \file config.h 17 | * \brief Defines platform configuration. 18 | */ 19 | 20 | #pragma once 21 | 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/binary_search.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/unique_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /compat/thrust/detail/use_default.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | 24 | struct use_default {}; 25 | 26 | } // end thrust 27 | 28 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits count 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits equal 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/merge.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits merge 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits count 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits equal 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits gather 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits logical 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits reverse 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits transform 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits gather 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits logical 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits reverse 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits transform 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits generate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits mismatch 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits sequence 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits swap_ranges 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits tabulate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits generate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits mismatch 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits sequence 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // tbb inherits swap_ranges 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits tabulate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/get_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits get_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/iter_swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits iter_swap 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/get_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits get_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/iter_swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits iter_swap 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/assign_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits assign_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/assign_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits assign_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits scan_by_key 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits inner_product 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/binary_search.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits binary_search 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits inner_product 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/malloc_and_free.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits malloc and free 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/set_operations.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits set_operations 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/malloc_and_free.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits malloc and free 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/set_operations.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits set_operations 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_reduce 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_reduce 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_copy 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/omp/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_copy 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/thrust/system/tbb/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /compat/jansson/utf.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009, 2010 Petri Lehtinen 3 | * 4 | * Jansson is free software; you can redistribute it and/or modify 5 | * it under the terms of the MIT license. See LICENSE for details. 6 | */ 7 | 8 | #ifndef UTF_H 9 | #define UTF_H 10 | 11 | #include 12 | 13 | #ifdef HAVE_INTTYPES_H 14 | /* inttypes.h includes stdint.h in a standard environment, so there's 15 | no need to include stdint.h separately. If inttypes.h doesn't define 16 | int32_t, it's defined in config.h. */ 17 | #include 18 | #endif 19 | 20 | int utf8_encode(int codepoint, char *buffer, int *size); 21 | 22 | int utf8_check_first(char byte); 23 | int utf8_check_full(const char *buffer, int size, int32_t *codepoint); 24 | const char *utf8_iterate(const char *buffer, int32_t *codepoint); 25 | 26 | int utf8_check_string(const char *string, int length); 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /compat/thrust/detail/config/simple_defines.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file simple_defines.h 18 | * \brief Primitive macros without dependencies. 19 | */ 20 | 21 | #pragma once 22 | 23 | #define THRUST_UNKNOWN 0 24 | #define THRUST_FALSE 0 25 | #define THRUST_TRUE 1 26 | 27 | #define THRUST_PREVENT_MACRO_SUBSTITUTION 28 | 29 | -------------------------------------------------------------------------------- /compat/thrust/detail/reference_forward_declaration.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | template class reference; 26 | 27 | } // end thrust 28 | 29 | -------------------------------------------------------------------------------- /compat/jansson/strbuffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009, 2010 Petri Lehtinen 3 | * 4 | * Jansson is free software; you can redistribute it and/or modify 5 | * it under the terms of the MIT license. See LICENSE for details. 6 | */ 7 | 8 | #ifndef STRBUFFER_H 9 | #define STRBUFFER_H 10 | 11 | typedef struct { 12 | char *value; 13 | int length; /* bytes used */ 14 | int size; /* bytes allocated */ 15 | } strbuffer_t; 16 | 17 | int strbuffer_init(strbuffer_t *strbuff); 18 | void strbuffer_close(strbuffer_t *strbuff); 19 | 20 | void strbuffer_clear(strbuffer_t *strbuff); 21 | 22 | const char *strbuffer_value(const strbuffer_t *strbuff); 23 | char *strbuffer_steal_value(strbuffer_t *strbuff); 24 | 25 | int strbuffer_append(strbuffer_t *strbuff, const char *string); 26 | int strbuffer_append_byte(strbuffer_t *strbuff, char byte); 27 | int strbuffer_append_bytes(strbuffer_t *strbuff, const char *data, int size); 28 | 29 | char strbuffer_pop(strbuffer_t *strbuff); 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /compat/thrust/detail/config/forceinline.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file forceinline.h 18 | * \brief Defines __thrust_forceinline__ 19 | */ 20 | 21 | #pragma once 22 | 23 | #include 24 | 25 | #if defined(__CUDACC__) 26 | 27 | #define __thrust_forceinline__ __forceinline__ 28 | 29 | #else 30 | 31 | // TODO add 32 | 33 | #define __thrust_forceinline__ 34 | 35 | #endif 36 | 37 | -------------------------------------------------------------------------------- /compat/thrust/detail/swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #pragma once 19 | 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | template 26 | __host__ __device__ 27 | inline void swap(Assignable1 &a, Assignable2 &b) 28 | { 29 | Assignable1 temp = a; 30 | a = b; 31 | b = temp; 32 | } // end swap() 33 | 34 | } // end namespace thrust 35 | 36 | -------------------------------------------------------------------------------- /compat/thrust/detail/config/hd_warning_disable.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file hd_warning_disable.h 18 | * \brief Defines __thrust_hd_warning_disable__ 19 | */ 20 | 21 | #pragma once 22 | 23 | #include 24 | 25 | #if defined(__CUDACC__) 26 | 27 | #define __thrust_hd_warning_disable__ \ 28 | #pragma hd_warning_disable 29 | #else 30 | 31 | #define __thrust_hd_warning_disable__ 32 | 33 | #endif 34 | 35 | 36 | -------------------------------------------------------------------------------- /compat/thrust/detail/allocator/destroy_range.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | namespace detail 24 | { 25 | 26 | template 27 | inline void destroy_range(Allocator &a, Pointer p, Size n); 28 | 29 | } // end detail 30 | } // end thrust 31 | 32 | #include 33 | 34 | -------------------------------------------------------------------------------- /compat/thrust/detail/config/debug.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #ifndef THRUST_DEBUG 20 | # ifndef NDEBUG 21 | # if (DEBUG || _DEBUG) 22 | # define THRUST_DEBUG 1 23 | # endif // (DEBUG || _DEBUG) 24 | # endif // NDEBUG 25 | #endif // THRUST_DEBUG 26 | 27 | #if THRUST_DEBUG 28 | # ifndef __THRUST_SYNCHRONOUS 29 | # define __THRUST_SYNCHRONOUS 1 30 | # endif // __THRUST_SYNCHRONOUS 31 | #endif // THRUST_DEBUG 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/detail/allocator/default_construct_range.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | namespace detail 24 | { 25 | 26 | 27 | template 28 | inline void default_construct_range(Allocator &a, Pointer p, Size n); 29 | 30 | 31 | } // end detail 32 | } // end thrust 33 | 34 | #include 35 | 36 | 37 | -------------------------------------------------------------------------------- /compat/thrust/detail/functional/operators.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | 26 | -------------------------------------------------------------------------------- /compat/thrust/detail/allocator/fill_construct_range.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | namespace detail 24 | { 25 | 26 | 27 | template 28 | inline void fill_construct_range(Allocator &a, Pointer p, Size n, const T &value); 29 | 30 | 31 | } // end detail 32 | } // end thrust 33 | 34 | #include 35 | 36 | -------------------------------------------------------------------------------- /compat/thrust/detail/functional/placeholder.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | namespace thrust 24 | { 25 | namespace detail 26 | { 27 | namespace functional 28 | { 29 | 30 | template 31 | struct placeholder 32 | { 33 | typedef actor > type; 34 | }; 35 | 36 | } // end functional 37 | } // end detail 38 | } // end thrust 39 | 40 | -------------------------------------------------------------------------------- /compat/thrust/detail/raw_pointer_cast.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | template 26 | inline __host__ __device__ typename thrust::detail::pointer_traits::raw_pointer 27 | raw_pointer_cast(const Pointer &ptr) 28 | { 29 | return thrust::detail::pointer_traits::get(ptr); 30 | } // end raw_pointer_cast() 31 | 32 | } // end thrust 33 | 34 | -------------------------------------------------------------------------------- /compat/thrust/detail/host_vector.inl: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | /*! \file host_vector.inl 19 | * \brief Inline file for host_vector.h. 20 | */ 21 | 22 | #include 23 | 24 | namespace thrust 25 | { 26 | 27 | template 28 | template 29 | host_vector 30 | ::host_vector(const device_vector &v) 31 | :Parent(v) 32 | { 33 | ; 34 | } // end host_vector::host_vector() 35 | 36 | } // end namespace thrust 37 | 38 | -------------------------------------------------------------------------------- /compat/thrust/detail/advance.inl: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | /*! \file advance.inl 19 | * \brief Inline file for advance.h 20 | */ 21 | 22 | #include 23 | #include 24 | #include 25 | 26 | namespace thrust 27 | { 28 | 29 | 30 | template 31 | void advance(InputIterator& i, Distance n) 32 | { 33 | thrust::system::detail::generic::advance(i, n); 34 | } // end advance() 35 | 36 | 37 | } // end namespace thrust 38 | 39 | -------------------------------------------------------------------------------- /compat/thrust/detail/device_vector.inl: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | /*! \file device_vector.inl 19 | * \brief Inline file for device_vector.h. 20 | */ 21 | 22 | #include 23 | 24 | namespace thrust 25 | { 26 | 27 | template 28 | template 29 | device_vector 30 | ::device_vector(const host_vector &v) 31 | :Parent(v) 32 | { 33 | ; 34 | } // end device_vector::device_vector() 35 | 36 | } // end namespace thrust 37 | 38 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/generic/advance.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #pragma once 19 | 20 | #include 21 | 22 | namespace thrust 23 | { 24 | namespace system 25 | { 26 | namespace detail 27 | { 28 | namespace generic 29 | { 30 | 31 | template 32 | void advance(InputIterator& i, Distance n); 33 | 34 | } // end namespace generic 35 | } // end namespace detail 36 | } // end namespace system 37 | } // end namespace thrust 38 | 39 | #include 40 | 41 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/synchronize.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #pragma once 19 | 20 | #include 21 | 22 | namespace thrust 23 | { 24 | namespace system 25 | { 26 | namespace cuda 27 | { 28 | namespace detail 29 | { 30 | 31 | inline void synchronize(const char *message = ""); 32 | 33 | inline void synchronize_if_enabled(const char *message = ""); 34 | 35 | } // end namespace detail 36 | } // end namespace cuda 37 | } // end namespace system 38 | } // end namespace thrust 39 | 40 | #include 41 | 42 | -------------------------------------------------------------------------------- /compat/thrust/detail/type_traits/is_metafunction_defined.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | namespace detail 26 | { 27 | 28 | __THRUST_DEFINE_HAS_NESTED_TYPE(is_metafunction_defined, type) 29 | 30 | template 31 | struct enable_if_defined 32 | : thrust::detail::lazy_enable_if< 33 | is_metafunction_defined::value, 34 | Metafunction 35 | > 36 | {}; 37 | 38 | } // end detail 39 | 40 | } // end thrust 41 | 42 | -------------------------------------------------------------------------------- /compat/thrust/iterator/detail/any_system_tag.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | struct any_system_tag 26 | : thrust::execution_policy 27 | { 28 | // allow any_system_tag to convert to any type at all 29 | // XXX make this safer using enable_if> upon c++11 30 | template operator T () const {return T();} 31 | }; 32 | 33 | // TODO remove this in 1.7.0 34 | typedef THRUST_DEPRECATED any_system_tag any_space_tag; 35 | 36 | } // end thrust 37 | 38 | -------------------------------------------------------------------------------- /compat/thrust/iterator/detail/iterator_traversal_tags.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | namespace thrust 20 | { 21 | 22 | // define Boost's traversal tags 23 | struct no_traversal_tag {}; 24 | 25 | struct incrementable_traversal_tag 26 | : no_traversal_tag {}; 27 | 28 | struct single_pass_traversal_tag 29 | : incrementable_traversal_tag {}; 30 | 31 | struct forward_traversal_tag 32 | : single_pass_traversal_tag {}; 33 | 34 | struct bidirectional_traversal_tag 35 | : forward_traversal_tag {}; 36 | 37 | struct random_access_traversal_tag 38 | : bidirectional_traversal_tag {}; 39 | 40 | } // end thrust 41 | 42 | -------------------------------------------------------------------------------- /compat/thrust/detail/distance.inl: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | /*! \file distance.inl 19 | * \brief Inline file for distance.h 20 | */ 21 | 22 | #include 23 | #include 24 | #include 25 | 26 | namespace thrust 27 | { 28 | 29 | 30 | template 31 | inline typename thrust::iterator_traits::difference_type 32 | distance(InputIterator first, InputIterator last) 33 | { 34 | return thrust::system::detail::generic::distance(first, last); 35 | } // end distance() 36 | 37 | 38 | } // end namespace thrust 39 | 40 | -------------------------------------------------------------------------------- /compat/thrust/detail/type_traits/iterator/is_discard_iterator.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | namespace thrust 24 | { 25 | namespace detail 26 | { 27 | 28 | template 29 | struct is_discard_iterator 30 | : public thrust::detail::false_type 31 | {}; 32 | 33 | template 34 | struct is_discard_iterator< thrust::discard_iterator > 35 | : public thrust::detail::true_type 36 | {}; 37 | 38 | } // end namespace detail 39 | } // end namespace thrust 40 | 41 | -------------------------------------------------------------------------------- /compat/thrust/iterator/detail/reverse_iterator_base.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | template class reverse_iterator; 26 | 27 | namespace detail 28 | { 29 | 30 | template 31 | struct reverse_iterator_base 32 | { 33 | typedef thrust::iterator_adaptor< 34 | thrust::reverse_iterator, 35 | BidirectionalIterator 36 | > type; 37 | }; // end reverse_iterator_base 38 | 39 | } // end detail 40 | 41 | } // end thrust 42 | 43 | -------------------------------------------------------------------------------- /compat/thrust/detail/type_traits/has_nested_type.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | #define __THRUST_DEFINE_HAS_NESTED_TYPE(trait_name, nested_type_name) \ 22 | template \ 23 | struct trait_name \ 24 | { \ 25 | typedef char yes_type; \ 26 | typedef int no_type; \ 27 | template static yes_type test(typename S::nested_type_name *); \ 28 | template static no_type test(...); \ 29 | static bool const value = sizeof(test(0)) == sizeof(yes_type);\ 30 | typedef thrust::detail::integral_constant type;\ 31 | }; 32 | 33 | -------------------------------------------------------------------------------- /ccminer.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ccminer", "ccminer.vcxproj", "{36DC07F9-A4A6-4877-A146-1B960083CF6F}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Debug|x64 = Debug|x64 10 | Release|Win32 = Release|Win32 11 | Release|x64 = Release|x64 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {36DC07F9-A4A6-4877-A146-1B960083CF6F}.Debug|Win32.ActiveCfg = Debug|Win32 15 | {36DC07F9-A4A6-4877-A146-1B960083CF6F}.Debug|Win32.Build.0 = Debug|Win32 16 | {36DC07F9-A4A6-4877-A146-1B960083CF6F}.Debug|x64.ActiveCfg = Debug|x64 17 | {36DC07F9-A4A6-4877-A146-1B960083CF6F}.Debug|x64.Build.0 = Debug|x64 18 | {36DC07F9-A4A6-4877-A146-1B960083CF6F}.Release|Win32.ActiveCfg = Release|Win32 19 | {36DC07F9-A4A6-4877-A146-1B960083CF6F}.Release|Win32.Build.0 = Release|Win32 20 | {36DC07F9-A4A6-4877-A146-1B960083CF6F}.Release|x64.ActiveCfg = Release|x64 21 | {36DC07F9-A4A6-4877-A146-1B960083CF6F}.Release|x64.Build.0 = Release|x64 22 | EndGlobalSection 23 | GlobalSection(SolutionProperties) = preSolution 24 | HideSolutionNode = FALSE 25 | EndGlobalSection 26 | EndGlobal 27 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/generic/distance.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #pragma once 19 | 20 | #include 21 | #include 22 | 23 | namespace thrust 24 | { 25 | namespace system 26 | { 27 | namespace detail 28 | { 29 | namespace generic 30 | { 31 | 32 | template 33 | inline typename thrust::iterator_traits::difference_type 34 | distance(InputIterator first, InputIterator last); 35 | 36 | } // end namespace generic 37 | } // end namespace detail 38 | } // end namespace system 39 | } // end namespace thrust 40 | 41 | #include 42 | 43 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the copy.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch copy 24 | 25 | #define __THRUST_HOST_SYSTEM_COPY_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/copy.h> 26 | #include __THRUST_HOST_SYSTEM_COPY_HEADER 27 | #undef __THRUST_HOST_SYSTEM_COPY_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_COPY_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/copy.h> 30 | #include __THRUST_DEVICE_SYSTEM_COPY_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_COPY_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the fill.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch fill 24 | 25 | #define __THRUST_HOST_SYSTEM_FILL_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/fill.h> 26 | #include __THRUST_HOST_SYSTEM_FILL_HEADER 27 | #undef __THRUST_HOST_SYSTEM_FILL_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_FILL_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/fill.h> 30 | #include __THRUST_DEVICE_SYSTEM_FILL_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_FILL_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/find.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the find.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch find 24 | 25 | #define __THRUST_HOST_SYSTEM_FIND_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/find.h> 26 | #include __THRUST_HOST_SYSTEM_FIND_HEADER 27 | #undef __THRUST_HOST_SYSTEM_FIND_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_FIND_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/find.h> 30 | #include __THRUST_DEVICE_SYSTEM_FIND_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_FIND_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the scan.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch scan 24 | 25 | #define __THRUST_HOST_SYSTEM_SCAN_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/scan.h> 26 | #include __THRUST_HOST_SYSTEM_SCAN_HEADER 27 | #undef __THRUST_HOST_SYSTEM_SCAN_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_SCAN_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/scan.h> 30 | #include __THRUST_DEVICE_SYSTEM_SCAN_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_SCAN_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/sort.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the sort.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch sort 24 | 25 | #define __THRUST_HOST_SYSTEM_SORT_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/sort.h> 26 | #include __THRUST_HOST_SYSTEM_SORT_HEADER 27 | #undef __THRUST_HOST_SYSTEM_SORT_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_SORT_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/sort.h> 30 | #include __THRUST_DEVICE_SYSTEM_SORT_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_SORT_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/iterator/detail/host_system_tag.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // #include the host system's execution_policy header 22 | #define __THRUST_HOST_SYSTEM_TAG_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/execution_policy.h> 23 | #include __THRUST_HOST_SYSTEM_TAG_HEADER 24 | #undef __THRUST_HOST_SYSTEM_TAG_HEADER 25 | 26 | namespace thrust 27 | { 28 | 29 | typedef thrust::system::__THRUST_HOST_SYSTEM_NAMESPACE::tag host_system_tag; 30 | 31 | } // end thrust 32 | 33 | // TODO remove this in 1.8.0 34 | namespace thrust 35 | { 36 | 37 | typedef THRUST_DEPRECATED host_system_tag host_space_tag; 38 | 39 | } // end thrust 40 | 41 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a count of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the count.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch count 24 | 25 | #define __THRUST_HOST_SYSTEM_COUNT_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/count.h> 26 | #include __THRUST_HOST_SYSTEM_COUNT_HEADER 27 | #undef __THRUST_HOST_SYSTEM_COUNT_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_COUNT_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/count.h> 30 | #include __THRUST_DEVICE_SYSTEM_COUNT_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_COUNT_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a equal of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the equal.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch equal 24 | 25 | #define __THRUST_HOST_SYSTEM_EQUAL_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/equal.h> 26 | #include __THRUST_HOST_SYSTEM_EQUAL_HEADER 27 | #undef __THRUST_HOST_SYSTEM_EQUAL_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_EQUAL_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/equal.h> 30 | #include __THRUST_DEVICE_SYSTEM_EQUAL_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_EQUAL_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/merge.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the merge.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch merge 24 | 25 | #define __THRUST_HOST_SYSTEM_MERGE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/merge.h> 26 | #include __THRUST_HOST_SYSTEM_MERGE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_MERGE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_MERGE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/merge.h> 30 | #include __THRUST_DEVICE_SYSTEM_MERGE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_MERGE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the reduce.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch reduce 24 | 25 | #define __THRUST_HOST_SYSTEM_REDUCE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/reduce.h> 26 | #include __THRUST_HOST_SYSTEM_REDUCE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_REDUCE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_REDUCE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/reduce.h> 30 | #include __THRUST_DEVICE_SYSTEM_REDUCE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_REDUCE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/remove.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the remove.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch remove 24 | 25 | #define __THRUST_HOST_SYSTEM_REMOVE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/remove.h> 26 | #include __THRUST_HOST_SYSTEM_REMOVE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_REMOVE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_REMOVE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/remove.h> 30 | #include __THRUST_DEVICE_SYSTEM_REMOVE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_REMOVE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/unique.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the unique.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch unique 24 | 25 | #define __THRUST_HOST_SYSTEM_UNIQUE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/unique.h> 26 | #include __THRUST_HOST_SYSTEM_UNIQUE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_UNIQUE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_UNIQUE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/unique.h> 30 | #include __THRUST_DEVICE_SYSTEM_UNIQUE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_UNIQUE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/iter_swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | namespace thrust 24 | { 25 | namespace system 26 | { 27 | namespace cpp 28 | { 29 | namespace detail 30 | { 31 | 32 | 33 | template 34 | __host__ __device__ 35 | void iter_swap(tag, Pointer1 a, Pointer2 b) 36 | { 37 | using thrust::swap; 38 | swap(*thrust::raw_pointer_cast(a), *thrust::raw_pointer_cast(b)); 39 | } // end iter_swap() 40 | 41 | 42 | } // end detail 43 | } // end cpp 44 | } // end system 45 | } // end thrust 46 | 47 | -------------------------------------------------------------------------------- /compat/thrust/iterator/detail/device_system_tag.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // #include the device system's execution_policy header 22 | #define __THRUST_DEVICE_SYSTEM_TAG_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/execution_policy.h> 23 | #include __THRUST_DEVICE_SYSTEM_TAG_HEADER 24 | #undef __THRUST_DEVICE_SYSTEM_TAG_HEADER 25 | 26 | namespace thrust 27 | { 28 | 29 | typedef thrust::system::__THRUST_DEVICE_SYSTEM_NAMESPACE::tag device_system_tag; 30 | 31 | } // end thrust 32 | 33 | // TODO remove this in 1.8.0 34 | namespace thrust 35 | { 36 | 37 | typedef THRUST_DEPRECATED device_system_tag device_space_tag; 38 | 39 | } // end thrust 40 | 41 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the logical.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch logical 24 | 25 | #define __THRUST_HOST_SYSTEM_LOGICAL_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/logical.h> 26 | #include __THRUST_HOST_SYSTEM_LOGICAL_HEADER 27 | #undef __THRUST_HOST_SYSTEM_LOGICAL_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_LOGICAL_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/logical.h> 30 | #include __THRUST_DEVICE_SYSTEM_LOGICAL_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_LOGICAL_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the replace.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch replace 24 | 25 | #define __THRUST_HOST_SYSTEM_REPLACE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/replace.h> 26 | #include __THRUST_HOST_SYSTEM_REPLACE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_REPLACE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_REPLACE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/replace.h> 30 | #include __THRUST_DEVICE_SYSTEM_REPLACE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_REPLACE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the reverse.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch reverse 24 | 25 | #define __THRUST_HOST_SYSTEM_REVERSE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/reverse.h> 26 | #include __THRUST_HOST_SYSTEM_REVERSE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_REVERSE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_REVERSE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/reverse.h> 30 | #include __THRUST_DEVICE_SYSTEM_REVERSE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_REVERSE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the scatter.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch scatter 24 | 25 | #define __THRUST_HOST_SYSTEM_SCATTER_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/scatter.h> 26 | #include __THRUST_HOST_SYSTEM_SCATTER_HEADER 27 | #undef __THRUST_HOST_SYSTEM_SCATTER_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_SCATTER_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/scatter.h> 30 | #include __THRUST_DEVICE_SYSTEM_SCATTER_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_SCATTER_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/detail/config/host_device.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file host_device.h 18 | * \brief Defines __host__ and __device__ and other CUDA-isms 19 | */ 20 | 21 | #pragma once 22 | 23 | #include 24 | 25 | #if THRUST_DEVICE_SYSTEM == THRUST_DEVICE_SYSTEM_CUDA 26 | 27 | #include 28 | 29 | #else 30 | 31 | // since __host__ & __device__ might have already be defined, only 32 | // #define them if not defined already 33 | // XXX this will break if the client does #include later 34 | 35 | #ifndef __host__ 36 | #define __host__ 37 | #endif // __host__ 38 | 39 | #ifndef __device__ 40 | #define __device__ 41 | #endif // __device__ 42 | 43 | #endif 44 | 45 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/extrema.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a extrema of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the extrema.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch extrema 24 | 25 | #define __THRUST_HOST_SYSTEM_EXTREMA_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/extrema.h> 26 | #include __THRUST_HOST_SYSTEM_EXTREMA_HEADER 27 | #undef __THRUST_HOST_SYSTEM_EXTREMA_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_EXTREMA_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/extrema.h> 30 | #include __THRUST_DEVICE_SYSTEM_EXTREMA_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_EXTREMA_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the gather.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch gather 24 | 25 | #define __THRUST_HOST_SYSTEM_FOR_EACH_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/gather.h> 26 | #include __THRUST_HOST_SYSTEM_FOR_EACH_HEADER 27 | #undef __THRUST_HOST_SYSTEM_FOR_EACH_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_FOR_EACH_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/gather.h> 30 | #include __THRUST_DEVICE_SYSTEM_FOR_EACH_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_FOR_EACH_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/get_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | namespace system 25 | { 26 | namespace cpp 27 | { 28 | namespace detail 29 | { 30 | 31 | 32 | template 33 | __host__ __device__ 34 | typename thrust::iterator_value::type 35 | get_value(thrust::system::cpp::detail::execution_policy &, Pointer ptr) 36 | { 37 | return *thrust::raw_pointer_cast(ptr); 38 | } // end get_value() 39 | 40 | 41 | } // end detail 42 | } // end cpp 43 | } // end system 44 | } // end thrust 45 | 46 | -------------------------------------------------------------------------------- /compat/thrust/system/cpp/detail/assign_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | namespace system 25 | { 26 | namespace cpp 27 | { 28 | namespace detail 29 | { 30 | 31 | template 32 | __host__ __device__ 33 | void assign_value(thrust::system::cpp::detail::execution_policy &, Pointer1 dst, Pointer2 src) 34 | { 35 | *thrust::raw_pointer_cast(dst) = *thrust::raw_pointer_cast(src); 36 | } // end assign_value() 37 | 38 | } // end detail 39 | } // end cpp 40 | } // end system 41 | } // end thrust 42 | 43 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/for_each.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the for_each.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch for_each 24 | 25 | #define __THRUST_HOST_SYSTEM_FOR_EACH_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/for_each.h> 26 | #include __THRUST_HOST_SYSTEM_FOR_EACH_HEADER 27 | #undef __THRUST_HOST_SYSTEM_FOR_EACH_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_FOR_EACH_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/for_each.h> 30 | #include __THRUST_DEVICE_SYSTEM_FOR_EACH_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_FOR_EACH_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the generate.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch generate 24 | 25 | #define __THRUST_HOST_SYSTEM_GENERATE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/generate.h> 26 | #include __THRUST_HOST_SYSTEM_GENERATE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_GENERATE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_GENERATE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/generate.h> 30 | #include __THRUST_DEVICE_SYSTEM_GENERATE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_GENERATE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the mismatch.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch mismatch 24 | 25 | #define __THRUST_HOST_SYSTEM_MISMATCH_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/mismatch.h> 26 | #include __THRUST_HOST_SYSTEM_MISMATCH_HEADER 27 | #undef __THRUST_HOST_SYSTEM_MISMATCH_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_MISMATCH_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/mismatch.h> 30 | #include __THRUST_DEVICE_SYSTEM_MISMATCH_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_MISMATCH_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the sequence.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch sequence 24 | 25 | #define __THRUST_HOST_SYSTEM_SEQUENCE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/sequence.h> 26 | #include __THRUST_HOST_SYSTEM_SEQUENCE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_SEQUENCE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_SEQUENCE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/sequence.h> 30 | #include __THRUST_DEVICE_SYSTEM_SEQUENCE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_SEQUENCE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the tabulate.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch tabulate 24 | 25 | #define __THRUST_HOST_SYSTEM_TABULATE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/tabulate.h> 26 | #include __THRUST_HOST_SYSTEM_TABULATE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_TABULATE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_TABULATE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/tabulate.h> 30 | #include __THRUST_DEVICE_SYSTEM_TABULATE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_TABULATE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/generic/tag.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | /*! \file generic/tag.h 19 | * \brief Implementation of the generic backend's tag. 20 | */ 21 | 22 | #pragma once 23 | 24 | #include 25 | 26 | namespace thrust 27 | { 28 | namespace system 29 | { 30 | namespace detail 31 | { 32 | namespace generic 33 | { 34 | 35 | // tag exists only to make the generic entry points the least priority match 36 | // during ADL. tag should not be derived from and is constructible from anything 37 | struct tag 38 | { 39 | template 40 | __host__ __device__ inline 41 | tag(const T &) {} 42 | }; 43 | 44 | } // end generic 45 | } // end detail 46 | } // end system 47 | } // end thrust 48 | 49 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/get_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the get_value.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch get_value 24 | 25 | #define __THRUST_HOST_SYSTEM_GET_VALUE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/get_value.h> 26 | #include __THRUST_HOST_SYSTEM_GET_VALUE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_GET_VALUE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_GET_VALUE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/get_value.h> 30 | #include __THRUST_DEVICE_SYSTEM_GET_VALUE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_GET_VALUE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/iter_swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the iter_swap.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch iter_swap 24 | 25 | #define __THRUST_HOST_SYSTEM_ITER_SWAP_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/iter_swap.h> 26 | #include __THRUST_HOST_SYSTEM_ITER_SWAP_HEADER 27 | #undef __THRUST_HOST_SYSTEM_ITER_SWAP_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_ITER_SWAP_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/iter_swap.h> 30 | #include __THRUST_DEVICE_SYSTEM_ITER_SWAP_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_ITER_SWAP_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/partition.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the partition.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch partition 24 | 25 | #define __THRUST_HOST_SYSTEM_PARTITION_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/partition.h> 26 | #include __THRUST_HOST_SYSTEM_PARTITION_HEADER 27 | #undef __THRUST_HOST_SYSTEM_PARTITION_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_PARTITION_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/partition.h> 30 | #include __THRUST_DEVICE_SYSTEM_PARTITION_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_PARTITION_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the transform.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch transform 24 | 25 | #define __THRUST_HOST_SYSTEM_TRANSFORM_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/transform.h> 26 | #include __THRUST_HOST_SYSTEM_TRANSFORM_HEADER 27 | #undef __THRUST_HOST_SYSTEM_TRANSFORM_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_TRANSFORM_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/transform.h> 30 | #include __THRUST_DEVICE_SYSTEM_TRANSFORM_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_TRANSFORM_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/cuda/detail/guarded_cuda_runtime_api.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to check for the existence of macros 22 | // such as __host__ and __device__, which may already be defined by thrust 23 | // and to undefine them before entering cuda_runtime_api.h (which will redefine them) 24 | 25 | // we only try to do this stuff if cuda/include/host_defines.h has been included 26 | #if !defined(__HOST_DEFINES_H__) 27 | 28 | #ifdef __host__ 29 | #undef __host__ 30 | #endif // __host__ 31 | 32 | #ifdef __device__ 33 | #undef __device__ 34 | #endif // __device__ 35 | 36 | #endif // __HOST_DEFINES_H__ 37 | 38 | #include 39 | 40 | -------------------------------------------------------------------------------- /compat/thrust/random/detail/linear_feedback_shift_engine_wordmask.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | namespace thrust 20 | { 21 | 22 | namespace random 23 | { 24 | 25 | namespace detail 26 | { 27 | 28 | template 29 | struct linear_feedback_shift_engine_wordmask 30 | { 31 | static const T value = 32 | (T(1u) << i) | 33 | linear_feedback_shift_engine_wordmask::value; 34 | }; // end linear_feedback_shift_engine_wordmask 35 | 36 | template 37 | struct linear_feedback_shift_engine_wordmask 38 | { 39 | static const T value = 0; 40 | }; // end linear_feedback_shift_engine_wordmask 41 | 42 | } // end detail 43 | 44 | } // end random 45 | 46 | } // end thrust 47 | 48 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/copy_if.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy_if.h of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the copy_if.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch copy_if 24 | 25 | #define __THRUST_HOST_SYSTEM_BINARY_SEARCH_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/copy_if.h> 26 | #include __THRUST_HOST_SYSTEM_BINARY_SEARCH_HEADER 27 | #undef __THRUST_HOST_SYSTEM_BINARY_SEARCH_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_BINARY_SEARCH_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/copy_if.h> 30 | #include __THRUST_DEVICE_SYSTEM_BINARY_SEARCH_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_BINARY_SEARCH_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the scan_by_key.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch scan_by_key 24 | 25 | #define __THRUST_HOST_SYSTEM_SCAN_BY_KEY_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/scan_by_key.h> 26 | #include __THRUST_HOST_SYSTEM_SCAN_BY_KEY_HEADER 27 | #undef __THRUST_HOST_SYSTEM_SCAN_BY_KEY_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_SCAN_BY_KEY_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/scan_by_key.h> 30 | #include __THRUST_DEVICE_SYSTEM_SCAN_BY_KEY_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_SCAN_BY_KEY_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the swap_ranges.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch swap_ranges 24 | 25 | #define __THRUST_HOST_SYSTEM_SWAP_RANGES_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/swap_ranges.h> 26 | #include __THRUST_HOST_SYSTEM_SWAP_RANGES_HEADER 27 | #undef __THRUST_HOST_SYSTEM_SWAP_RANGES_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_SWAP_RANGES_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/swap_ranges.h> 30 | #include __THRUST_DEVICE_SYSTEM_SWAP_RANGES_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_SWAP_RANGES_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/assign_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the assign_value.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch assign_value 24 | 25 | #define __THRUST_HOST_SYSTEM_ASSIGN_VALUE_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/assign_value.h> 26 | #include __THRUST_HOST_SYSTEM_ASSIGN_VALUE_HEADER 27 | #undef __THRUST_HOST_SYSTEM_ASSIGN_VALUE_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_ASSIGN_VALUE_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/assign_value.h> 30 | #include __THRUST_DEVICE_SYSTEM_ASSIGN_VALUE_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_ASSIGN_VALUE_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/binary_search.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the binary_search.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch binary_search 24 | 25 | #define __THRUST_HOST_SYSTEM_BINARY_SEARCH_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/binary_search.h> 26 | #include __THRUST_HOST_SYSTEM_BINARY_SEARCH_HEADER 27 | #undef __THRUST_HOST_SYSTEM_BINARY_SEARCH_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_BINARY_SEARCH_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/binary_search.h> 30 | #include __THRUST_DEVICE_SYSTEM_BINARY_SEARCH_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_BINARY_SEARCH_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the inner_product.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch inner_product 24 | 25 | #define __THRUST_HOST_SYSTEM_INNER_PRODUCT_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/inner_product.h> 26 | #include __THRUST_HOST_SYSTEM_INNER_PRODUCT_HEADER 27 | #undef __THRUST_HOST_SYSTEM_INNER_PRODUCT_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_INNER_PRODUCT_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/inner_product.h> 30 | #include __THRUST_DEVICE_SYSTEM_INNER_PRODUCT_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_INNER_PRODUCT_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/reduce_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the reduce_by_key.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch reduce_by_key 24 | 25 | #define __THRUST_HOST_SYSTEM_REDUCE_BY_KEY_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/reduce_by_key.h> 26 | #include __THRUST_HOST_SYSTEM_REDUCE_BY_KEY_HEADER 27 | #undef __THRUST_HOST_SYSTEM_REDUCE_BY_KEY_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_REDUCE_BY_KEY_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/reduce_by_key.h> 30 | #include __THRUST_DEVICE_SYSTEM_REDUCE_BY_KEY_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_REDUCE_BY_KEY_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/unique_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the unique_by_key.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch unique_by_key 24 | 25 | #define __THRUST_HOST_SYSTEM_UNIQUE_BY_KEY_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/unique_by_key.h> 26 | #include __THRUST_HOST_SYSTEM_UNIQUE_BY_KEY_HEADER 27 | #undef __THRUST_HOST_SYSTEM_UNIQUE_BY_KEY_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_UNIQUE_BY_KEY_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/unique_by_key.h> 30 | #include __THRUST_DEVICE_SYSTEM_UNIQUE_BY_KEY_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_UNIQUE_BY_KEY_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/iterator/detail/distance_from_result.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | namespace detail 26 | { 27 | 28 | // since both arguments are known to be specializations of iterator_facade, 29 | // it's legal to access IteratorFacade2::difference_type 30 | template 31 | struct distance_from_result 32 | : eval_if< 33 | is_convertible::value, 34 | identity_, 35 | identity_ 36 | > 37 | {}; 38 | 39 | } // end detail 40 | 41 | } // end thrust 42 | 43 | -------------------------------------------------------------------------------- /compat/thrust/detail/device_free.inl: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | /*! \file device_free.inl 19 | * \brief Inline file for device_free.h. 20 | */ 21 | 22 | #include 23 | #include 24 | #include 25 | #include 26 | #include 27 | 28 | namespace thrust 29 | { 30 | 31 | void device_free(thrust::device_ptr ptr) 32 | { 33 | using thrust::system::detail::generic::select_system; 34 | 35 | typedef thrust::iterator_system< thrust::device_ptr >::type system; 36 | 37 | // XXX lower to select_system(system) here 38 | system s; 39 | 40 | thrust::free(s, ptr); 41 | } // end device_free() 42 | 43 | } // end thrust 44 | 45 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/set_operations.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the set_operations.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch set_operations 24 | 25 | #define __THRUST_HOST_SYSTEM_SET_OPERATIONS_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/set_operations.h> 26 | #include __THRUST_HOST_SYSTEM_SET_OPERATIONS_HEADER 27 | #undef __THRUST_HOST_SYSTEM_SET_OPERATIONS_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_SET_OPERATIONS_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/set_operations.h> 30 | #include __THRUST_DEVICE_SYSTEM_SET_OPERATIONS_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_SET_OPERATIONS_HEADER 32 | 33 | -------------------------------------------------------------------------------- /compat/thrust/system/detail/adl/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a fill of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // the purpose of this header is to #include the transform_scan.h header 22 | // of the host and device systems. It should be #included in any 23 | // code which uses adl to dispatch transform_scan 24 | 25 | #define __THRUST_HOST_SYSTEM_TRANSFORM_SCAN_HEADER <__THRUST_HOST_SYSTEM_ROOT/detail/transform_scan.h> 26 | #include __THRUST_HOST_SYSTEM_TRANSFORM_SCAN_HEADER 27 | #undef __THRUST_HOST_SYSTEM_TRANSFORM_SCAN_HEADER 28 | 29 | #define __THRUST_DEVICE_SYSTEM_TRANSFORM_SCAN_HEADER <__THRUST_DEVICE_SYSTEM_ROOT/detail/transform_scan.h> 30 | #include __THRUST_DEVICE_SYSTEM_TRANSFORM_SCAN_HEADER 31 | #undef __THRUST_DEVICE_SYSTEM_TRANSFORM_SCAN_HEADER 32 | 33 | --------------------------------------------------------------------------------