At the 2012 United States Olympic Trials in Omaha, Nebraska, Weir made the U.S. Olympic team for the second time by finishing fifth in the 100-meter freestyle with a time of 54.41, which qualified her to swim in the 4×100-meter freestyle as a member of the U.S. relay team. At the 2012 Summer Olympics in London, she earned a bronze medal as a member of the U.S. team in the women's 4×100-meter freestyle relay.