Daniel Sanders

Compiler Engineer at Apple

San Francisco Bay Area United States
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
🎓
Top School
Daniel Sanders is a compiler engineer with 12 years of experience, currently shaping compiler back-ends at Apple from the San Francisco Bay Area. He has deep LLVM/Clang expertise—contributing to instruction selection, DWARF/debug info, and MIPS-specific builtins and assembler support—demonstrating low-level knowledge of ISA details and toolchain internals. Previously a lead software design engineer at Imagination Technologies, he pairs production-grade compiler feature work with build-system and automation improvements (notably CMake and pocl portability). Comfortable across TableGen, GlobalISel, and assembler integrations, he brings a practical blend of systems engineering and attention to obscure platform quirks like MSA and floating-point ABI options.
code13 years of coding experience
job10 years of employment as a software developer
bookBSc (Hons) Computer Science, BSc (Hons) Computer Science at University of Bath
github-logo-circle

Github Skills (31)

debugging10
assembly10
c-language10
dwarf10
architecture10
computer-architecture10
llvm10
cmake10
c1110
pattern-matching10
codegen10
c1710
code-generation10
compiler-design10
assemble10

Programming languages (6)

C++CLLVMRPCLogosPython

Github contributions (5)

github-logo-circle
apple/swift-llvm

Jan 2017 - Dec 2017

Role in this project:
userBack-end Developer
Contributions:105 commits, 2 pushes in 11 months
Contributions summary:Daniel primarily contributed to the GlobalISel (GISel) instruction selection framework within the LLVM project. Their work focused on improving the pattern matching capabilities of GISel, including the addition of atomic operations, immediate operand support, and the integration of complex patterns, indicating a deep involvement in compiler back-end development. These changes involved modifying TableGen files and implementing new predicates, renderers, and actions to extend the framework. Furthermore, they improved the functionality and correctness of the code, which is critical for generating optimized machine code.
llvm/llvm-project

Aug 2019 - Feb 2026

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
Role in this project:
userBack-end Developer
Contributions:17 reviews, 25 PRs, 91 pushes in 6 years 6 months
Contributions summary:Daniel primarily contributes to the LLVM project, focusing on compiler and toolchain technologies. Their work includes fixing bugs, and implementing new features related to instruction selection and debugging information generation. The user modified the instruction selection process to use `GISelChangeObserver` instead of `MachineFunction::Delegate`. The user also added a new CFI directive and corrected code related to Metal Shading Language support in the dwarf files.
compilerllvmtoolchain
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial