- Corps = /kɔː(r)/: the PS is silent
- Coup = /kuː/: the P is silent
Corps
Etymology Dictionary says "from French corps d'armée (16c.), which apparently was picked up in English during Marlborough's campaigns, from French corps (old French cors) "body," from Latin corpus "body""
Wikitionary: From French corps d'armée (literally “army body”), from Latin corpus (“body”)
For the Latin corpus, wikitionary gives this pronunciation in which the P is pronounced: /ˈkor.pus/
Coup
Etymology Dictionary: *from Old French coup, colp "a blow, strike" (12c.), from Medieval Latin colpus, from Vulgar Latin colapus, from Latin colaphus "a cuff, box on the ear," from Greek kolaphos "a blow, buffet, punch, slap," "a lowly word without clear etymology" [Beekes]
Wikitionary: Borrowed from French coup (“blow, strike”), from Late Latin colpus, from Latin colaphus. Doublet of colpus.
For the French coup, Wikitionary pronunciation is /ku/.
There's a similar question on Quora, but most answers there says "because English spelling is stupid". One of the answers says "because there's another word corpse" but that doesn't sound reasonable.
What's happening here? Why are the P's silent in these words in English? Can anyone explain it briefly?