Cache the fingerprint of sOpt_P

Authored by niteria on Feb 22 2018, 8:44 AM.

Description

Cache the fingerprint of sOpt_P

Before this change we would compute a hash of
all the command line -optP flags once per file.
With a lot of files and many -optP flags, that's a lot
of repeated work.

I added a new Note that explains the approach and rationale.

Test Plan: new test

Reviewers: simonmar, simonpj, bgamari

Reviewed By: simonpj

Subscribers: rwbarton, thomie, carter

GHC Trac Issues: Trac #14697

Differential Revision: https://phabricator.haskell.org/D4445