Interfacing 20x4 character LCD with TI TM4C1294 generates some random characters
Your function LCD_SendCmd contains the following line:

GPIO_PORTL_DATA_R |= 0x00;


Which does nothing. What it should do is set bit 0 to zero to access the command register, so replace it with

GPIO_PORTL_DATA_R &amp;= ~(0x01);


otherwise it will never get cleared once you've started writing data.

You also need to add code to check the busy status to make sure the display is ready for more data or commands; this normally involves reading the status register and testing the Busy flag. The display datasheet will tell you which bit this is.

Checking the busy flag means also that you don't have to put arbitrarily long delays into the code to make sure commands are completed other than for the initial setup operations as defined in the datasheet (because the busy flag doesn't start working until the display processor starts running) and for making sure that the setup, hold and minimum cycle times for the control lines are maintained. If in doubt, these are best checked with an oscilloscope rather than relying on delay functions.