AdaCore and GNAT make an overt effort to "do the right thing" with Ada on a particular platform.
My reading of the GNAT Pro User's Guide about -gnatP is that it's needed only if you need the ability in your program for "asynchronous abort and asynchronous transfer of control". An "asynchronous abort" I take to be an "abort task" statement, while "asynchonous transfer of control" is what it is.
If your program is not employing either of these features, then there is no need for -gnatP.
I've personally never used ATC, and used task abortion only until I figured out a better way to achieve what I was trying to do.
If your code is running fine without the switch so far, then I'm guessing that you're not using either of those features. And if you continue to avoid them, you should be fine.