|
|
|
|
|
by skillina
27 days ago
|
|
Source for what? The volatile keyword is explicitly telling the compiler "don't optimize read/write to this memory location". That's the whole point. Its use for manipulating hardware registers is covered in any intro embedded systems course. I don't know the history of C compilers but it would seem reasonable to assume that compilers started out plainly translating the C to machine code. Optimization would have happened later as the compilers became more mature. https://www.gnu.org/software/c-intro-and-ref/manual/html_nod... |
|