While Jasarien is correct in that you cannot rollback the baseband once a device has been flashed with a specific baseband (in the general case, anyway), you can still usually downgrade the firmware. This will, however, not downgrade the baseband and unless the newer baseband is compatible with the old firmware (unlikely) you'll be left with a device that cannot connect to the cellular network or perform other networking functions, possibly including not being able to connect to a Wifi network. If a lack of networking capability would leave you unable to test your application, then you will need to find someone who still has a device on 3.0. Additionally, Apple has Compatibility Labs if you are near their Cupertino campus.
If you do still want to roll back the firmware, you can do so, but you'll be greeted with an error number (probably error 1015). This in itself isn't a problem - this just signifies that the baseband flashing failed - but you'll need to use some third-party software to kick your iPhone out of restore mode.
Unfortunately, if your device is a iPhone 3GS, you're out of luck. Apple stopped signing firmware updates for 3.0 and 3.0.1 quite a while ago, and unless you prepared ahead of time to ensure that you could retain your ability to downgrade to 3.0 (which sounds unlikely, if you're asking this question), you're up a creek.
If you need more detailed downgrading instructions, I suggest you take a look at one of the many blogs with instructions (a small sampling of which are listed):
http://www.iphonedownloadblog.com/2009/09/15/downgrade-iphone-31-to-30/
http://www.blogsdna.com/3911/how-to-downgrade-iphone-3gs-31-to-30-os.htm
Best Answer
What is Bitcode? Bitcode refers to the type of code that is sent to iTunes Connect which allows Apple to use certain calculations to re-optimize apps further. You can learn more about bitcodehere.
Either: "obtain an updated library from the vendor"
or: "disable bitcode for this target."
To disable Bitcode, go to the Build Settings tab of your workspace, scroll down to Build Options, and set Enable Bitcode to No.
the latter can be done through the build settings: