Skip to content

Instantly share code, notes, and snippets.

@Cyan4973
Cyan4973 / stb_dxt.h
Created October 4, 2012 09:44 — forked from rygorous/stb_dxt.h
YannC's modified rygdxt code review
// stb_dxt.h - Real-Time DXT1/DXT5 compressor
// Based on original by fabian "ryg" giesen v1.04
// Custom version, modified by Yann Collet
//
/*
BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php)
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
@Cyan4973
Cyan4973 / gist:5b835641c134b8d6e7c3
Created June 19, 2014 21:55
Takayuki's Streaming example 2 (simplified)
// LZ4 streaming API example 2 (ring buffer)
#define _CRT_SECURE_NO_WARNINGS // for MSVC
#include "lz4.h"
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
// vim: ts=8 sw=2 smarttab
/*
* Ceph - scalable distributed file system
*
* Copyright (C) 2015 Haomai Wang <[email protected]>
*
* This is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <stdint.h>
#include <string.h>
typedef struct {
uint64_t low64;
uint64_t high64;
} XXH128_hash_t;
.file "xxhash.c"
.intel_syntax noprefix
.text
.p2align 4
.def XXH64_finalize; .scl 3; .type 32; .endef
.seh_proc XXH64_finalize
XXH64_finalize:
.seh_endprologue
lea r9, .L4[rip]
and r8d, 31
@Cyan4973
Cyan4973 / xxhash.s
Created March 5, 2020 01:08
more verbose version
This file has been truncated, but you can view the full file.
.file "xxhash.c"
.intel_syntax noprefix
# GNU C17 (Rev2, Built by MSYS2 project) version 9.2.0 (x86_64-w64-mingw32)
# compiled by GNU C version 9.2.0, GMP version 6.1.2, MPFR version 4.0.2, MPC version 1.1.0, isl version isl-0.21-GMP
# warning: GMP header version 6.1.2 differs from library version 6.2.0.
# GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
# options passed:
# -iprefix C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/
# -D_REENTRANT xxhash.c -masm=intel -mavx2
/* PowerPC AltiVec include file.
Copyright (C) 2002-2019 Free Software Foundation, Inc.
Contributed by Aldy Hernandez ([email protected]).
Rewritten by Paolo Bonzini ([email protected]).
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 3, or (at your
/* PowerPC AltiVec include file.
Copyright (C) 2002-2018 Free Software Foundation, Inc.
Contributed by Aldy Hernandez ([email protected]).
Rewritten by Paolo Bonzini ([email protected]).
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 3, or (at your
This file has been truncated, but you can view the full file.
#include <string.h>
#include <stdio.h>
#include <unistd.h>
#include <lz4.h>
const char uncompressed[] = {
0x69, 0x70, 0x0d, 0x20, 0x00, 0x00, 0x00, 0xe0, 0x21, 0x6a, 0x25, 0x00,
0x21, 0x6a, 0x25, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x38,
0x21, 0x6a, 0x25, 0x00, 0x21, 0x6a, 0x25, 0x00, 0x21, 0x6a, 0x25, 0x00,
0x21, 0x6a, 0x25, 0x00, 0x21, 0x6a, 0x25, 0x00, 0x21, 0x6a, 0x25, 0x00,
#define _GNU_SOURCE // O_DIRECT
#include <xxhash.h> // XXH64
#include <stddef.h> // size_t
#include <stdint.h> // uint64_t
typedef uint64_t u64;
void genRand(u64* a64, size_t a64Size)
{
u64 r = XXH64(NULL, 0, a64Size);