Skip asan test on FreeBSD

The build fails due to missing asan runtime in the FreeBSD base system.
Instead of marking it expected fail, just skip until we have the runtime
available.

llvm.org/pr21136


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@219328 91177308-0d34-0410-b5e6-96231b3b80d8
Add decorator for FreeBSD failure

llvm.org/pr21211


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@219329 91177308-0d34-0410-b5e6-96231b3b80d8
Extend synthetic children to produce synthetic values (as in, those that GetValueAsUnsigned(), GetValueAsCString() would return)

The way to do this is to write a synthetic child provider for your type, and have it vend the (optional) get_value function.
If get_value is defined, and it returns a valid SBValue, that SBValue's value (as in lldb_private::Value) will be used as the synthetic ValueObject's Value

The rationale for doing things this way is twofold:

- there are many possible ways to define a "value" (SBData, a Python number, ...) but SBValue seems general enough as a thing that stores a "value", so we just trade values that way and that keeps our currency trivial
- we could introduce a new level of layering (ValueObjectSyntheticValue), a new kind of formatter (synthetic value producer), but that would complicate the model (can I have a dynamic with no synthetic children but synthetic value? synthetic value with synthetic children but no dynamic?), and I really couldn't see much benefit to be reaped from this added complexity in the matrix
On the other hand, just defining a synthetic child provider with a get_value but returning no actual children is easy enough that it's not a significant road-block to adoption of this feature

Comes with a test case



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@219330 91177308-0d34-0410-b5e6-96231b3b80d8