← Înapoi la Urmăritori

Cel mai recent articol

Ultima verificare

Urmăritori 0 urmăritori
Articole: 99
  1. In this post, we’ll use floating-point scalar evolution (fpscev) to simplify instructions based on any range data we’ve managed to deduce.

  2. As a follow-up to my post An Experimental Floating-Point Scalar Evolution, I’ve started looking into using my previous analysis to actually change the LLVM IR for the better.

  3. The TL;DR - after a conversation at EuroLLVM with Steve Canon about how LLVM is missing scalar evolution analysis for floating-point, I’ve spent some spare time hacking on a new LLVM analysis pass - fpscev (Floating-Point SCalar EVolution) - available here

  4. For those that don’t know - the favourite single-header C/C++ library that I’ve ever created is my unit test helper - utest.h.

  5. Switching my blog to Hugo

    I’ve long been frustrated with wordpress as the way I post content on my blog: It is bloated and slow to load pages.

  6. I’ve been continuing my foray into Rust, and one thing I’ve been interested in is global allocators - Rust’s builtin support for switching the allocator used by an application.

  7. 2018 Review

    2018 has been a very busy year for me personally, and I thought for the sake of my own memory of the events I’d do a review of the things I’ve managed to achieve this year.

  8. So I’ve been playing around with Rust in my spare time for a few months now, and have been doing a lot of stuff that bridges C/C++ and Rust content.

  9. After 11 years since my first internship, and 9 years full time, I’m leaving Codeplay to join AMD.

  10. I’ve been meaning to try out Intel’s VTune now that it has a permanent trial mode (you can renew the 30-day trial license every 30-days without paying!)

  11. After my previous post on how to read & write LLVM bitcode, I thought I’d follow it up with a post on actually modifying LLVM bitcode files after you’ve read them.

  12. I’ve read multiple posts on social media now complaining about how scary LLVM is to get to grips with.

  13. I’ve had a lot of people using my unicode library utf8.h since its release - thanks to all who’ve found the library useful and provided feedback!

  14. Introducing process.h!

    I’ve long been after a cross-platform way to launch processes and interact with them for use from C & C++.

  15. One component of Codeplay’s ComputeAorta that I manage is our high precision maths library Abacus.

  16. LLVM comes with a really useful set of options LLVM_USE_CRT_ which allows you to specify a different C RunTime (CRT) when compiling with Visual Studio.

  17. I gave a talk on Friday 13th of October 2017 at the Khronos Munich Chapter titled ‘OpenCL to Vulkan: A Porting Guide’.

  18. Previously I had begun a series of blog posts detailing how to port applications from OpenCL -> Vulkan.

  19. Vulkan is the newest kid on the block when it comes to cross-platform, widely supported, GPGPU compute.

  20. Vulkan is the newest kid on the block when it comes to cross-platform, widely supported, GPGPU compute.

  21. Vulkan is the newest kid on the block when it comes to cross-platform, widely supported, GPGPU compute.

  22. Adding JSON 5 to json.h

    I’ve added JSON 5 support to my json.h library.

  23. This is part of a series, the first four parts of the series can be found at: Hooking up MPC & LLVM Cleaning up the parser Adding type identifiers Adding branching In this post, we’ll cover how to add loops to our little toy language I’m calling Neil - Not

  24. This is part of a series, the first three parts of the series can be found at: Hooking up MPC & LLVM Cleaning up the parser Adding type identifiers In this post, we’ll cover how to add branching support to our little toy language I’m calling Neil - Not Ex…

  25. SPIR-V is a simple binary intermediate language used for graphics shaders and compute kernels.

  26. In a previous post I introduced a little command line tool spirv-stats I’ve been working on.

  27. I’ve just released a small one C++ file tool called spirv-stats.

  28. In my previous post cleaning up the parser, I had rationalised the parser for my custom language I’m calling Neil - Not Exactly an Intermediate Language.

  29. I was recently made aware of the awesome JSON parser/writer benchmark suite nativejson-benchmark (thanks to the awesome @chadaustin).

  30. In my previous post Hooking up MPC & LLVM I had started hooking up MPC to LLVM, to start developing a custom language I’m calling Neil - Not Exactly an Intermediate Language.

  31. Hooking up MPC & LLVM

    I’ve been tinkering around with mpc and llvm recently - just to satisfy a few simple questions: How easy is it to use mpc?

  32. With all the buzz surrounding Vulkan and its ability to make graphics more shiny/pretty/fast, there is one key thing seems to have been lost in the ether of information - Vulkan isn’t just a graphics API, it supports compute too!

  33. Allocators in json.h!

    While at GDC I got a feature request from the awesome folks over at Blastbay Studios requesting that they could feed an allocator to json.h, my JSON parsing library.

  34. Most of my company projects have a requirement that we run clang-format on all commits to keep a consistent style.

  35. In a previous post (Partial) Simplified JSON support in json.h I covered the partially added simplified JSON support I had added to json.h.

  36. Introducing utest.h!

    So as you may (or may not) already know - I’ve written two tiny C libraries - utf8.h and json.h.

  37. With the help of the rather awesome @ocornut - I’ve managed to get a variant of simplified JSON support into json.h!

  38. So previously I tested my json.h library’s performance against other JSON libraries in the wild (json.h performance (vs other C/C++ JSON parsers).

  39. One of the first questions I had when I open sourced my json.h library was how fast it can parse compared to other commonly used JSON libraries around.

  40. json.h

    Back in May, the rather awesome imgui creator @ocornut asked the following; And it got me thinking - why isn’t there a simple JSON reader/writer lib in the same vein as the stb_* libraries that performs a single call to malloc to encode the state?

  41. utf8.h progress!

    Since my last post introducing utf8.h I’ve been frantically working on fleshing out the core utf8* functions to match the str* ones, and also listening to developer feedback!

  42. utf8.h

    I’ve been tinkering around with a new one header library (having been inspired by the awesome stb libraries that @nothings created), a utf8 string library https://github.com/sheredom/utf8.h.

  43. I’m quite particular about how I word the variables that are exposed via my APIs.

  44. Just about everyone has used the size_t type - and everybody and their grandmothers know what the type means of course!

  45. So I previously installed Jenkins on my Raspberry Pi 2, and ran my first job through Jenkins.

  46. So in my last post Installing Jenkins on Raspberry Pi 2 I took us through the steps it took me to get a Jenkins server running on my Raspberry Pi 2 - but I didn’t actually run any jobs on the Raspberry Pi 2!

  47. So I’ve always wanted to roll my own home continuous integration (CI) server - I use Jenkins as my main CI at work (having used Atlassian’s Bamboo and the hideousness that is buildbot in the past), so I thought I may as well start there.

  48. I’ve uploaded my slides with speaker notes for the Khronos/EuroLLVM talk I gave this week.

  49. After reading “SIMD at Insomniac Games – How we do the shuffle” I realised I hadn’t done anything with my new Raspberry Pi 2 yet.