It clearly depends on context, much like many other words we throw around regularly. I’ve absolutely no problem with being called pretty much any endearing/familiar term you like providing it’s not suggesting I’m female or trying to belittle me or patronise me. Where I work it’s not uncommon for the female staff to call me love and I don’t even bat an eyelid. One of the female security staff did, however, call me “sweetheart” in a rather patronising tone in front of a bunch of students (who all gave a suitable sharp intake of breath!) which I took exception to and asked her to come for a walk with me while I explained why it wasn’t appropriate and was somewhat undermining. She’d intended for it to be belittling as she thought I was a student and thought that was acceptable, she got a shock and apologised and we’ve been fine since then, even when she’s called me sweetheart!
I don’t really subscribe to the notion of “we’ve a history of discrimination therefore you can’t use terms like that” – I’ve no history of discriminating against you, you’ve never met me and I’m simply being friendly, not causing any ill – don’t judge me on other people’s historical actions.
I don’t get people who’re upset by being called mate by someone who’s “not a mate” – it’s just a general term, to pick up on that and get so upset over it suggests there’s something else going on in your head, to me, it just washes over my mind, goes in one ear and out the other as “hello”.
And I have no idea why we’re all still perpetuating the class system and even striving to be at the bottom of this construct. The only reason to perpetuate such a device is to have a weapon to use against people who you think are worse than you in some way and divide the population rather than bring it together as a people. It’s just a chip on your shoulder if you use it as such and an ill-thought casual categorisation of yourself if you accept you fit into such a scheme.