A bare metal example program written in Rust (https://rust-lang.org) for the Stellaris Launchpad (LM4F120 dev board). May also work on the very closely related Tiva-C TM4C120 Launchpad.
The idea is that useful functionality will be moved out into separate crates.
bash
cargo install xargo
rustup install nightly
git clone https://github.com/thejpster/launchpad-rs.git
cd ./launchpad-rs
rustup override set nightly
rustup component add rust-src
bash
xargo build --example launchpad_blink
arm-none-eabi-objcopy -O binary target/thumbv7em-none-eabihf/debug/examples/launchpad_blink target/thumbv7em-none-eabihf/debug/examples/launchpad_blink.bin
sudo lm4flash target/thumbv7em-none-eabihf/debug/examples/launchpad_blink.bin
~/launchpad-rs $ sudo openocd -f /usr/share/openocd/scripts/board/ek-lm4f120xl.cfg
~/launchpad-rs $ arm-none-eabi-gdb ./target/thumbv7em-none-eabihf/debug/examples/launchpad_blink
(gdb) target remote localhost:3333
(gdb) load
Loading section .text, size 0x1e98 lma 0x0
Loading section .ARM.exidx, size 0x8 lma 0x1e98
Loading section .data, size 0xc lma 0x1ea0
Start address 0x0, load size 7852
Transfer rate: 7 KB/sec, 2617 bytes/write.
(gdb) monitor reset halt
(gdb) break main
(gdb) continue