For anyone else looking to do this, in nav-menu-template.php file, under the start_el() function you’ll find the line:
$item_output .= $args->link_before . apply_filters( 'the_title', $item->title, $item->ID ) . $args->link_after;
replace it with:
$item_output .= $args->link_before . apply_filters( 'the_title', strtoupper($item->title), $item->ID ) . $args->link_after;
Note the placement of strtoupper.
It’s better to create a custom walker for wp_nav_menu. That way you don’t have to hack core files:
Put this custom walker with the changes that you want in your functions.php: http://pastebin.com/5ZmzWrgW
And call wp_nav_menu with the callback to your custom walker like this:
<?php wp_nav_menu( array( 'theme_location' => 'primary', 'walker' => new to_upper_walker()) ); ?>