Fixes issue 204.

pull/216/head
castano 10 years ago
parent 57298c71c8
commit 7e74261f92

@ -39,8 +39,6 @@
#define NV_NOINLINE __attribute__((noinline))
// Define __FUNC__ properly.
#if __STDC_VERSION__ < 199901L
# if __GNUC__ >= 2
@ -53,21 +51,3 @@
#endif
#define restrict __restrict__
/*
// Type definitions
typedef uint8_t uint8;
typedef int8_t int8;
typedef uint16_t uint16;
typedef int16_t int16;
typedef uint32_t uint32;
typedef int32_t int32;
typedef uint64_t uint64;
typedef int64_t int64;
// Aliases
typedef uint32 uint;
*/

@ -3,12 +3,12 @@
#endif
#include <stdint.h> // uint8_t, int8_t, ... uintptr_t
#include <cstddef> // operator new, size_t, NULL
#include <stddef.h> // operator new, size_t, NULL
// Function linkage
#define DLL_IMPORT
#if __GNUC__ >= 4
# define DLL_EXPORT __attribute__((visibility("default")))
# define DLL_EXPORT __attribute__((visibility("default")))
# define DLL_EXPORT_CLASS DLL_EXPORT
#else
# define DLL_EXPORT
@ -25,11 +25,10 @@
#endif
#define NV_FASTCALL __attribute__((fastcall))
#define NV_FORCEINLINE __attribute__((always_inline))
#define NV_FORCEINLINE __attribute__((always_inline)) inline
#define NV_DEPRECATED __attribute__((deprecated))
#define NV_THREAD_LOCAL __thread
#if __GNUC__ > 2
#define NV_PURE __attribute__((pure))
#define NV_CONST __attribute__((const))
@ -52,22 +51,3 @@
#endif
#define restrict __restrict__
/*
// Type definitions
typedef unsigned char uint8;
typedef signed char int8;
typedef unsigned short uint16;
typedef signed short int16;
typedef unsigned int uint32;
typedef signed int int32;
typedef unsigned long long uint64;
typedef signed long long int64;
// Aliases
typedef uint32 uint;
*/

@ -30,6 +30,7 @@
#include "nvcore/Debug.h"
#include "nvcore/Utils.h" // max
#include "nvcore/StdStream.h"
#include "nvmath/Vector.inl"
#include <string.h> // memset

@ -8,6 +8,7 @@
#include <float.h> // FLT_MAX
#include <vector>
#include <string.h>
using namespace nv;
@ -498,7 +499,7 @@ static void EigenSolver3_Tridiagonal(float mat[3][3], float * diag, float * subd
diag[0] = a;
subd[2] = 0.f;
if ( fabs(c) >= epsilon )
if (fabsf(c) >= epsilon)
{
const float ell = sqrtf(b*b+c*c);
b /= ell;
@ -538,8 +539,8 @@ static bool EigenSolver3_QLAlgorithm(float mat[3][3], float * diag, float * subd
int m;
for (m = ell; m <= 1; m++)
{
float dd = fabs(diag[m]) + fabs(diag[m+1]);
if ( fabs(subd[m]) + dd == dd )
float dd = fabsf(diag[m]) + fabsf(diag[m+1]);
if ( fabsf(subd[m]) + dd == dd )
break;
}
if ( m == ell )
@ -555,7 +556,7 @@ static bool EigenSolver3_QLAlgorithm(float mat[3][3], float * diag, float * subd
for (int i = m-1; i >= ell; i--)
{
float f = s*subd[i], b = c*subd[i];
if ( fabs(f) >= fabs(g) )
if ( fabsf(f) >= fabsf(g) )
{
c = g/f;
r = sqrtf(c*c+1);
@ -690,7 +691,7 @@ static void EigenSolver4_Tridiagonal(float mat[4][4], float * diag, float * subd
float maxElement = FLT_MAX;
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j)
maxElement = max(maxElement, fabs(mat[i][j]));
maxElement = max(maxElement, fabsf(mat[i][j]));
float epsilon = relEpsilon * maxElement;
// Iterative algorithm, works for any size of matrix but might be slower than
@ -711,7 +712,7 @@ static void EigenSolver4_Tridiagonal(float mat[4][4], float * diag, float * subd
float r = sqrtf(0.5f * (alpha*alpha - A(k+1,k)*alpha));
// If r is zero, skip this column - already in tridiagonal form
if (fabs(r) < epsilon)
if (fabsf(r) < epsilon)
continue;
float v[n] = {};
@ -728,12 +729,12 @@ static void EigenSolver4_Tridiagonal(float mat[4][4], float * diag, float * subd
Q = mul(Q, P);
}
nvDebugCheck(fabs(A(2,0)) < epsilon);
nvDebugCheck(fabs(A(0,2)) < epsilon);
nvDebugCheck(fabs(A(3,0)) < epsilon);
nvDebugCheck(fabs(A(0,3)) < epsilon);
nvDebugCheck(fabs(A(3,1)) < epsilon);
nvDebugCheck(fabs(A(1,3)) < epsilon);
nvDebugCheck(fabsf(A(2,0)) < epsilon);
nvDebugCheck(fabsf(A(0,2)) < epsilon);
nvDebugCheck(fabsf(A(3,0)) < epsilon);
nvDebugCheck(fabsf(A(0,3)) < epsilon);
nvDebugCheck(fabsf(A(3,1)) < epsilon);
nvDebugCheck(fabsf(A(1,3)) < epsilon);
for (int i = 0; i < n; ++i)
diag[i] = A(i,i);
@ -758,8 +759,8 @@ static bool EigenSolver4_QLAlgorithm(float mat[4][4], float * diag, float * subd
int m;
for (m = ell; m < 3; m++)
{
float dd = fabs(diag[m]) + fabs(diag[m+1]);
if ( fabs(subd[m]) + dd == dd )
float dd = fabsf(diag[m]) + fabsf(diag[m+1]);
if ( fabsf(subd[m]) + dd == dd )
break;
}
if ( m == ell )
@ -775,7 +776,7 @@ static bool EigenSolver4_QLAlgorithm(float mat[4][4], float * diag, float * subd
for (int i = m-1; i >= ell; i--)
{
float f = s*subd[i], b = c*subd[i];
if ( fabs(f) >= fabs(g) )
if ( fabsf(f) >= fabsf(g) )
{
c = g/f;
r = sqrtf(c*c+1);

@ -1,8 +1,8 @@
PROJECT(nvtt)
ADD_SUBDIRECTORY(squish)
#ADD_SUBDIRECTORY(bc6h)
#ADD_SUBDIRECTORY(bc7)
ADD_SUBDIRECTORY(bc6h)
ADD_SUBDIRECTORY(bc7)
SET(NVTT_SRCS
nvtt.h nvtt.cpp
@ -12,7 +12,7 @@ SET(NVTT_SRCS
BlockCompressor.h BlockCompressor.cpp
CompressorDX9.h CompressorDX9.cpp
CompressorDX10.h CompressorDX10.cpp
# CompressorDX11.h CompressorDX11.cpp
CompressorDX11.h CompressorDX11.cpp
CompressorRGB.h CompressorRGB.cpp
Context.h Context.cpp
QuickCompressDXT.h QuickCompressDXT.cpp
@ -47,7 +47,7 @@ ELSE(NVTT_SHARED)
ADD_LIBRARY(nvtt ${NVTT_SRCS})
ENDIF(NVTT_SHARED)
TARGET_LINK_LIBRARIES(nvtt ${LIBS} nvcore nvmath nvimage nvthread squish)
TARGET_LINK_LIBRARIES(nvtt ${LIBS} nvcore nvmath nvimage nvthread squish bc6h bc7)
INSTALL(TARGETS nvtt
RUNTIME DESTINATION bin

@ -17,6 +17,7 @@ See the License for the specific language governing permissions and limitations
#include "nvcore/Debug.h"
#include "nvmath/Vector.inl"
#include <cstring>
#include <float.h>
using namespace nv;
using namespace AVPCL;

@ -24,6 +24,7 @@ See the License for the specific language governing permissions and limitations
#include "utils.h"
#include "endpts.h"
#include <cstring>
#include <float.h>
#include "shapes_three.h"

@ -24,6 +24,7 @@ See the License for the specific language governing permissions and limitations
#include "utils.h"
#include "endpts.h"
#include <cstring>
#include <float.h>
#include "shapes_two.h"

@ -24,6 +24,7 @@ See the License for the specific language governing permissions and limitations
#include "utils.h"
#include "endpts.h"
#include <cstring>
#include <float.h>
#include "shapes_three.h"

@ -24,6 +24,7 @@ See the License for the specific language governing permissions and limitations
#include "utils.h"
#include "endpts.h"
#include <cstring>
#include <float.h>
#include "shapes_two.h"

@ -24,6 +24,7 @@ See the License for the specific language governing permissions and limitations
#include "utils.h"
#include "endpts.h"
#include <cstring>
#include <float.h>
using namespace nv;
using namespace AVPCL;

@ -24,6 +24,7 @@ See the License for the specific language governing permissions and limitations
#include "utils.h"
#include "endpts.h"
#include <cstring>
#include <float.h>
using namespace nv;
using namespace AVPCL;

@ -24,7 +24,7 @@ See the License for the specific language governing permissions and limitations
#include "utils.h"
#include "endpts.h"
#include <cstring>
#include <float.h>
using namespace nv;
using namespace AVPCL;

@ -24,6 +24,7 @@ See the License for the specific language governing permissions and limitations
#include "utils.h"
#include "endpts.h"
#include <cstring>
#include <float.h>
#include "shapes_two.h"

@ -45,7 +45,7 @@ public:
static float metric3premult_alphain(nv::Vector3::Arg rgb0, nv::Vector3::Arg rgb1, int rotatemode);
static float metric1premult(float rgb0, float a0, float rgb1, float a1, int rotatemode);
static float Utils::premult(float r, float a);
static float premult(float r, float a);
// quantization and unquantization
static int unquantize(int q, int prec);

@ -1,6 +1,6 @@
ADD_EXECUTABLE(filtertest filtertest.cpp ../tools/cmdline.h)
TARGET_LINK_LIBRARIES(filtertest nvcore nvmath nvimage)
TARGET_LINK_LIBRARIES(filtertest nvcore nvmath nvimage nvtt)
ADD_EXECUTABLE(nvtestsuite testsuite.cpp)
TARGET_LINK_LIBRARIES(nvtestsuite nvcore nvmath nvimage nvtt)
@ -13,7 +13,7 @@ ADD_TEST(NVTT.TestSuite.Epic.nocuda nvtestsuite -path ${NV_SOURCE_DIR}/data/test
IF (CUDA_FOUND)
ADD_EXECUTABLE(driverapitest driverapi.cpp)
TARGET_LINK_LIBRARIES(driverapitest nvcore nvmath nvimage)
TARGET_LINK_LIBRARIES(driverapitest nvcore nvmath nvimage nvtt)
ENDIF (CUDA_FOUND)
ADD_EXECUTABLE(imperativeapi imperativeapi.cpp)

@ -3,19 +3,19 @@ ADD_EXECUTABLE(nvcompress compress.cpp cmdline.h)
TARGET_LINK_LIBRARIES(nvcompress nvcore nvmath nvimage nvtt)
ADD_EXECUTABLE(nvdecompress decompress.cpp cmdline.h)
TARGET_LINK_LIBRARIES(nvdecompress nvcore nvmath nvimage)
TARGET_LINK_LIBRARIES(nvdecompress nvcore nvmath nvimage nvtt)
ADD_EXECUTABLE(nvddsinfo ddsinfo.cpp cmdline.h)
TARGET_LINK_LIBRARIES(nvddsinfo nvcore nvmath nvimage)
TARGET_LINK_LIBRARIES(nvddsinfo nvcore nvmath nvimage nvtt)
ADD_EXECUTABLE(nvimgdiff imgdiff.cpp cmdline.h)
TARGET_LINK_LIBRARIES(nvimgdiff nvcore nvmath nvimage)
TARGET_LINK_LIBRARIES(nvimgdiff nvcore nvmath nvimage nvtt)
ADD_EXECUTABLE(nvassemble assemble.cpp cmdline.h)
TARGET_LINK_LIBRARIES(nvassemble nvcore nvmath nvimage)
TARGET_LINK_LIBRARIES(nvassemble nvcore nvmath nvimage nvtt)
ADD_EXECUTABLE(nvzoom resize.cpp cmdline.h)
TARGET_LINK_LIBRARIES(nvzoom nvcore nvmath nvimage)
TARGET_LINK_LIBRARIES(nvzoom nvcore nvmath nvimage nvtt)
SET(TOOLS nvcompress nvdecompress nvddsinfo nvassemble nvzoom)
@ -28,7 +28,7 @@ ENDIF(GLEW_FOUND AND GLUT_FOUND AND OPENGL_FOUND)
ADD_EXECUTABLE(nv-gnome-thumbnailer thumbnailer.cpp cmdline.h)
TARGET_LINK_LIBRARIES(nv-gnome-thumbnailer nvcore nvmath nvimage)
TARGET_LINK_LIBRARIES(nv-gnome-thumbnailer nvcore nvmath nvimage nvtt)
SET(TOOLS ${TOOLS} nv-gnome-thumbnailer)

Loading…
Cancel
Save