Skip to content

Instantly share code, notes, and snippets.

View mattkretz's full-sized avatar

Matthias Kretz mattkretz

View GitHub Profile
@mattkretz
mattkretz / debug_gcc.vim
Created February 9, 2022 11:26
vim command "hack" to debug g++ in termdebug.vim
function! s:DebugGcc()
let file = expand("%:p")
let p = substitute(file, '/src/gcc-[^/]\+\zs/.*$', '', '').'/obj/gcc'
let driver = p.'/xg++'
let tmp = systemlist(driver.' "-###" -S -o- -O2 -std=c++20 -B '.p.' -I'.p.'/../x86_64-pc-linux-gnu/libstdc++-v3/include -I'.p.'/../x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu '.file)
let cc1plus = split(filter(tmp, 'v:val =~ "cc1plus"')[0], '\s\+')
execute "Termdebug ".cc1plus[0]
execute "Arguments ".join(cc1plus[1:], ' ')
call TermDebugSendCommand("source ".p."/.gdbinit")
endfunction
@mattkretz
mattkretz / Changelog Vc 1.4.1.md
Created November 19, 2018 12:17
Changelog Vc 1.4.1
  • c0f61705 CMake: sanity test clang and std::tuple - Matthias Kretz
  • ee2809c8 Remove ICC workaround that now produces failures - Matthias Kretz
  • b32ae2b3 Fix alignment of doubles on -m32 - Matthias Kretz
  • 4f188f52 Remove alignment workaround that doesn't work - Matthias Kretz
  • 84d4e3d9 Include CXXFLAGS in builddir name - Matthias Kretz
  • 070d3217 Fix call to virtest skip - Matthias Kretz
  • 8c722c8e Fix i686 build - adra0
  • 3b678f75 Restore where(mask, SubscriptOperation) functionality - Matthias Kretz
  • 3ad5cd9e Fix GatherArguments usage to drop qualifi
@mattkretz
mattkretz / Changelog Vc 1.4.0.md
Created October 1, 2018 12:41
Changelog Vc 1.4.0
  • 45a75e0a Adjust to new version.h path and fix commit - Matthias Kretz
  • 6c6b16c2 Document make_interleave_wrapper - Matthias Kretz
  • 98cc3c90 Use correct accessor for const memory - Matthias Kretz
  • af621f1f Rewrite operator return type deduction - Matthias Kretz
  • e519eae8 Test operator failures via sfinae_is_callable - Matthias Kretz
  • c9bba807 MSVC: work around C++ frontend bug - Matthias Kretz
  • 41c21fbb ICC uses movups, which doesn't break the ABI - Matthias Kretz
  • 67dc8e3b Fix workaround & disambiguate fixed_size simd_cast - Matthias Kretz
  • 9d9ad90d
@mattkretz
mattkretz / generate_canonical distribution.txt
Created January 26, 2018 07:50
Histogram of `std::generate_canonical` with `std::mt19937`
0x1.00000ep-8 [█████████▉ ] (5364) 0x1.00000ep-2 [█████████████████████████████▌] (677015) 0x1p+0 [ ] (0)
0x1.00000cp-8 [██████████████████████████████] (16094) 0x1.00000cp-2 [██████████████████████████████] (687737) 0x1.fffffep-1 [██████████████████████████████] (2037954)
0x1.00000ap-8 [██████████ ] (5377) 0x1.00000ap-2 [█████████████████████████████▌] (677262) 0x1.fffffcp-1 [████████████████████▏ ] (1368073)
0x1.000008p-8 [█████████████████████████████▍] (15817) 0x1.000008p-2 [█████████████████████████████▉] (686821) 0x1.fffffap-1 [███████████████████▉ ] (1357709)
0x1.000006p-8 [█████████▊ ] (5275) 0x1.000006p-2 [█████████████████████████████▍] (676012) 0x1.fffff8p-1 [████████████████████▏ ] (1368447)
0x1.000004p-8 [█████████████████████████████▊] (15960) 0x1.000004p-2 [█████████████████████████████▉] (687623) 0x1.fffff6p-1 [████
@mattkretz
mattkretz / Changelog Vc 1.3.3.md
Last active November 27, 2017 15:52
Changelog Vc 1.3.3
  • 840ddfe Replace non-std types uint and ushort - Matthias Kretz
  • 898500c as discussed on the ML, introducing is_valid_vector_argument - Kay F. Jahnke
  • c62ac04 Revert "Trig: make XOP, FMA4, FAM, BMI2 part of the type" - Matthias Kretz
  • de9bcee Trig: make XOP, FMA4, FAM, BMI2 part of the type - Matthias Kretz
  • 5bcac28 CTest: apply skip_tests to travis branch - Matthias Kretz
  • 4ebd9ab CMake: check for MIC only on x86 - Matthias Kretz
  • 81cbab5 cpuid shall only exist on x86 - Matthias Kretz
  • 3facdff Drop _default and work around TSC non-portability - Matthias Kretz
  • [1ea3bf8](https://github.com/VcDevel/Vc/commi
0000000000c0e060 <Vc::v2::datapar<double, Vc::v2::datapar_abi::fixed_size<8> > sqr<Vc::v2::datapar<double, Vc::v2::datapar_abi::fixed_size<8> > >(Vc::v2::datapar<double, Vc::v2::datapar_abi::fixed_size<8> > const&)>:
c0e060:· vmovapd (%rsi),%ymm1
c0e064:· mov %rdi,%rax
c0e067:· vmovapd 0x20(%rsi),%ymm0
c0e06c:· vmulpd %ymm1,%ymm1,%ymm1
c0e070:· vmulpd %ymm0,%ymm0,%ymm0
c0e074:· vmovapd %ymm1,(%rdi)
c0e078:· vmovapd %ymm0,0x20(%rdi)
c0e07d:· vzeroupper·
c0e080:· retq
  • 71f831c Silence Wignored-attributes in user code - Matthias Kretz
  • 2a2dbf1 OFA: Add more Intel family numbers + kaby-lake - Matthias Kretz
  • 53f6759 CMake: Skip MIC builds with non-Makefile generators - Matthias Kretz
  • 9ac1335 Remove spline example - Matthias Kretz
  • 0763c0c CMake: glob examples directories instead of listing them - Matthias Kretz
  • c3dfebe Mention AoVS - Matthias Kretz
  • 3f78772 CTest: ignore warning addressing Vc users - Matthias Kretz
  • 57aa8d5 CTest: Find the right file if the branch name has a / - Matthias Kretz
  • b3cb9da CTest: Omit git hash on nightlies - Matthias Kretz
  • 975ccdb CTest: Improve CDash sorting and presentation - Matthias Kretz
  • 72c3d25 Examples: End recursion earl
  • dbeb19a Update README for 1.3 - Matthias Kretz
  • 362e5c9 Tests: fix corner case on simd_for_each - Matthias Kretz
  • a3dbc3f Remove stale ROOT release script - Matthias Kretz
  • 5b50cd9 Test simd_for_each_n and fix it - Matthias Kretz
  • c4c342e Adding simd_for_each_n - Hartmut Kaiser
  • 6357205 MSVC: work around isnan miscompilation - Matthias Kretz
  • 826aa8f SimdArray: use inline instead of Vc_INTRINSIC - Matthias Kretz
  • 444ad27 MSVC: work around miscompilation - Matthias Kretz
  • 3bd5bfc SimdArray: fix linkage & use inline/Vc_INTRINSIC - Matthias Kretz
  • [74897b8](
  • 9a0d148 docs: document SimdMaskArray using mostly \copydoc - Matthias Kretz
  • 66c3fee SimdArray: add missing new/delete operator overloads - Matthias Kretz
  • 3ecaee2 docs: document new/delete operator overloads - Matthias Kretz
  • 730eab7 SimdArray: rename parameter VectorType to V - Matthias Kretz
  • 28f05c5 docs: Documentation for SimdArray copying from Vector - Matthias Kretz
  • 21a9b12 docs: Fix doxygen warnings by adding more documentation - Matthias Kretz
  • 85f4e21 docs: Document deprecated gather/scatter - Matthias Kretz
  • f3be3ea docs: SimdArray math functions documented - Matthias Kretz
  • [40d491e](https://