Lots of people use an epoxy paint on their concrete garage floors, so it should stick well to concrete and stand up well, too.
Higgs:
The general rule is: You prime over bare materials (bare metal, bare wood, bare drywall, etc.) and you paint over paint.
A "primer" improves adhesion of the top coat by increasing the surface area it has to stick to. Primers do that by having huge rocks in them called "extender pigments". Extender pigments are almost large enough to see with the naked eye. As the paint film dries and the thinners evaporate out of it, the film shrinks in thickness, and these huge rocks leave "bumps" in the surface of the shrinking paint film, making the surface of the primer "rough", and thereby creating creating more surface area for the top coat to stick to. In that way, primers improve adhesion of the top coat to the substrate.
However, with old bare concrete, the surface is already rough. So if this was old concrete that had never been painted, there would be no question that you can paint directly over it without a primer. However, in your case, the surface porosity of your concrete may be largely filled in with old paint, and not as rough as never-painted concrete. How rough it is is really the question.
Probably the best way to test to see if you need to prime is to do a tape test. Apply a few square inches of your paint directly onto what you have now and give it time to fully dry or cure. Now, take a razor blade and cut a checkerboard pattern into the paint. That is, 9 parallel lines this way, and 9 perpendicular parallel lines that way. Now, take some ordinary yellow 2 inch wide masking tape and press it tightly down over your cut checkerboard pattern, and then quickly pull off the tape. The more paint squares that come off the checkerboard with the tape, the more you need to prime. This is how they actually test paint adhesion in paint labs, and anything over 80% adhesion is considered "good adhesion".