Specify instruction format in `HInstructionBuilder`.

Even in cases where constant propagation to switch statement
should reduce the inlined `Instruction::VReg{A,B,C}()` to
the version with a specific format, clang++ is failing to
optimize this properly. And there are builder functions that
handle a known instruction format which are not inlined, so
they are ineligible even if clang++ did optimize this. This
simple change reduces the read/execute section in arm64
`libart.so` by almost 35KiB as seen with
    readelf -l [...]/libart.so | grep -E 'R E'
(0x71a350 -> 0x711820).

Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Change-Id: Ia2d89fecef7fd8b8784fa7d6b0d2b8877501c629
2 files changed