As a follow up to my last post I thought I should make it clear that while the legacy SDK is currently a supported part of the product, there is no ongoing development on it; it's in maintenance mode with bug fixes only. New features eg. JTAG UART are likely only to be supported in the HAL.
If you have an existing Nios I project there is no problem using the legacy SDK. For a new project you should probably be using the HAL.
**
Basically new components and features may or may not get supported in the legacy SDK. Legacy being the key word here. All the old components should work as they did before.