Les principes du pragma sont clairement énoncées par cette page. En gros, l'idée, c'est de pouvoir modifier le comportement du compilateur (par exemple, en termes d'optimisation du code généré, ou de génération des infos de débogage)
Ensuite, l'utilisation des pragmas est propre à chaque compilo, alors c'est la doc de ton compilo qu'il faut aller voir pour avoir la liste des pragmas supportés et leur signification.