There are few possibilities to program an empty (virgin) chip. Yes there are some rudimentary functions to program a row of flash already residing in the chip, but they (of course) cannot be erased. Look at the System Reference Guide (accessable from help-menu). These functions are used by ISSP programmers to download the data.
The term "Bootloader" is widely used for a piece of software that you have to program yourself into the chip, some versions are already made for you. These bootloaderrs need a communication interface (USB, UART,I2C...) and an external device (PC) to communicate with. This allows for updating a PSoC in the field without the need of having the complete IDE / Programmer at the customer's site.
The way to tell what a processor will do on power up into erased program
memory is to look at its technical reference to see what happens encountering
an instruction of null. Goto ARM website and refer to technical manual.
To see if you can order factory devices programmed with boot
loader contact local Cypress rep or sales manager, or file a case -
To file a tech case -
“Create a MyCase”
You have to be registered on cypress.com to do this.
If Cypress does not offer this you could always go to a 3'rd party programming
house (or ask in the case for a referral).
http://www.cypress.com/?rID=2543 All things PSOC programming