Becuase these type were on Core, it required core to be included all over the place, notably in IR/Value.h and IR/Type.h . As a result, any change in Core.h require to recompile LLVM almost completely, which is painful.
Moving them to Support.h allow for most of LLVM to not depend on Core.h , saving a lot of compilation time.
There is no functionality change, only reorganisation of header to save compilation time.
Would be good to add:
#include "llvm-c/ErrorHandling.h"
here, to continue defining those functions when including this header, so users don't need to do version-conditions to include a brand new header for existing functions.