4 ms·
Not a software guy, but to my understanding CFI is basically about being able to ensure that a program only does what it is supposed to according to its control
by trsohmers 11y ago
Not a software guy, but to my understanding CFI is basically about being able to ensure that a program only does what it is supposed to according to its control flow graph (https://en.wikipedia.org/wiki/Control_flow_graph https://en.wikipedia.org/wiki/Control_flow_graph). The importance of this is you can have better security guarantees as long as you trust the compiler and that the architecture doesn't have any serious flaws.
Also, LLVM backends are the different architectures it supports (x86, ARM, Power, etc) and frontends are the different languages (C, C++, haskell, python, etc).
- pohl 11y agoDoes the GP's use of "backend" needs correction? What a language's compiler refers to as its backend and what LLVM refers to as a backend can mean different things.