Adds support for multi-input kernels to libbcc.

This patch modifies libbcc in the following ways:
* Adjusted the data-layout of the LLVM version of RsForEachStubParamStruct to
  accommodate a pointer to an array of input allocations and a pointer to an
  array of stride sizes for each of these allocations.
* Changed how some LLVM values are stored in ExpandKernel.
* Causes expanded multi-input kernels to extract input allocation base pointers
  from a field in the param strcut and load values from these allocations
  appropriately.
* Causes expanded multi-input kernels to use the provided dynamic input stride
  sizes if no appropriate static type information is present.
* Modified bitinfo to support a new development API target which is used to
  version gate support for multi-input kernels.

Change-Id: I46d2834c37075b2a2407fd8b010546818a4540d1
2 files changed