diff --git a/.gitignore b/.gitignore
index a16cb823eba7150a2238b7d3f0b75e96faef2192..17d6922ceda8e1a6592c5c471f3d15fcf366a97e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,24 +1,69 @@
-# Created by https://www.toptal.com/developers/gitignore/api/git,vim,emacs,linux,macos,c++,executable
-# Edit at https://www.toptal.com/developers/gitignore?templates=git,vim,emacs,linux,macos,c++,executable
+# Created by https://www.toptal.com/developers/gitignore/api/git,vim,emacs,linux,macos,c,cuda,c++,executable
+# Edit at https://www.toptal.com/developers/gitignore?templates=git,vim,emacs,linux,macos,c,cuda,c++,executable
 
-### C++ ###
+### C ###
 # Prerequisites
 *.d
 
-# Compiled Object files
-*.slo
-*.lo
+# Object files
 *.o
+*.ko
 *.obj
+*.elf
+
+# Linker output
+*.ilk
+*.map
+*.exp
 
 # Precompiled Headers
 *.gch
 *.pch
 
-# Compiled Dynamic libraries
+# Libraries
+*.lib
+*.a
+*.la
+*.lo
+
+# Shared objects (inc. Windows DLLs)
+*.dll
 *.so
+*.so.*
 *.dylib
-*.dll
+
+# Executables
+*.exe
+*.out
+*.app
+*.i*86
+*.x86_64
+*.hex
+
+# Debug files
+*.dSYM/
+*.su
+*.idb
+*.pdb
+
+# Kernel Module Compile Results
+*.mod*
+*.cmd
+.tmp_versions/
+modules.order
+Module.symvers
+Mkfile.old
+dkms.conf
+
+### C++ ###
+# Prerequisites
+
+# Compiled Object files
+*.slo
+
+# Precompiled Headers
+
+# Compiled Dynamic libraries
 
 # Fortran module files
 *.mod
@@ -26,14 +71,16 @@
 
 # Compiled Static libraries
 *.lai
-*.la
-*.a
-*.lib
 
 # Executables
-*.exe
-*.out
-*.app
+
+### CUDA ###
+*.i
+*.ii
+*.gpu
+*.ptx
+*.cubin
+*.fatbin
 
 ### Emacs ###
 # -*- mode: gitignore; -*-
@@ -178,4 +225,4 @@ tags
 # Persistent undo
 [._]*.un~
 
-# End of https://www.toptal.com/developers/gitignore/api/git,vim,emacs,linux,macos,c++,executable
+# End of https://www.toptal.com/developers/gitignore/api/git,vim,emacs,linux,macos,c,cuda,c++,executable