Comment by high_na_euv
1 day ago
I have small experience with compilers and llvm but youd be shocked how many things rely on names and parsing names
If you have hundreds of passes that are complex and rely on various "contracts" like type names or some shit, then really crazy things like this can happen unintentionally and not maliciously
Web-developers are well aware of this too. Sincerely, Mozilla/5.0 (X11; Linux x86_64; rv:139.0) Gecko/20100101 Firefox/139.0
Funny we send a browser wars tombstone in every request!
Let's have a moment of silence for Gecko/20100101
Some names are standardized items, like memcpy. Matching those is ok, nothing sneaky going on there. Matching something vendor-specific in a general-purpose API is different story.
Why would i be shocked that a name is informative. Like... are you surprised that wrought iron is wrought? Or cast iron is made from a cast?
Dog piles are often neither composed of dogs, nor actual piles.
Names can be both informative, and misdirecting, at the same time.