Datasheet Figure 16-1 makes no sense relative to register 1 text 12 bit FIFO and full/empty interrupt levels also have no basis in diagram 16-1 or REG1.
Are FIFO's 16 bit x 8 deep or (16 deep x 8 bit DATA registers)? Figure 16-1 relates 12 bit FIFO being REG1 UARTDR? How are the status bits OE,BE,PE,FE, of REG1 getting into Fig.1 UARTDR? Point being UARDR REG1 does not have details specifically relate (Fig.1) visually for software data read/writes as it has been drawn. Are FIFO's 16 bit or are they 8 bit? Datasheet does not explain the FIFO in Written detail as to how it's architecture is drawn in Figure 1. Oddly Tivaware casts uint32_t bit wide data read from UARTCharGet() when REG1 is only 12 bits wide and we only desire 8 bit data POP into the C+ Array[N]. Very how difficult without a BUFFER data stream retrieval is compared to Arduino simple Serial calls coded in line transparent to FIFO!
Compounding the issue is any SW invoking (uartstdio.c) with UART_BUFFERED does not allow multiple instance UARTS to be configured or use the same module. Yet there are 8 UARTS and the code written for Tivaware is way outdated compared to other industry products such as Arduino. Perhaps time to invest resources re-write uartstdio.c so multiple UARTprintf() calls to several configured UARTs with PEAK ability!
Register 1: UART Data (UARTDR), offset 0x000:
For received data, if the FIFO is enabled, the data byte and the 4-bit status (break, frame, parity, and overrun) is pushed onto the 12-bit wide receive FIFO. If the FIFO is disabled, the data byte and status are stored in the receiving holding register (the bottom word of the receive FIFO). The received data can be retrieved by reading this register.