Em::Blocks is free C/C++ IDE based on code::blocks framework targeting embedded applications.
Support for ARM, PIC, AVR, MSP430 is included with GCC compilers and GDB debugging.
The most important feature we like is the Project Wizzard which allow you to start your project with templates which cover the most popular ARM processors from ST, NXP, EM etc.
And according to this forum messages http://www.emblocks.org/forum/viewtopic.php?f=19&t=70 there is no problem to debug with OpenOCD GDB server.
You can see from this video how easy is to setup project for STM32F4 with the Project Wizzard: http://www.youtube.com/watch?v=coHPJylnzC8
So with ARM-USB-TINY-H and Em::Blocks you are ready to go for embedded ARM work.