Re: [RFC PATCH v6 24/32] perf record: Compile scriptlets if pass '.c' to --event

Alexei Starovoitov
2015-06-10T00:28:56Z

On 6/9/15 5:06 PM, Wangnan (F) wrote:
>
>
> On 2015/6/10 5:48, Alexei Starovoitov wrote:
>> On 6/8/15 10:50 PM, Wang Nan wrote:
>>> +struct bpf_param bpf_param = {
>>> + .clang_path = "clang",
>>> + .llc_path = "llc",
>>> + .clang_opt = "",
>>> + .llc_opt = "",
>>> +};
>>
>> the defaults are ok-ish, but llc is never in PATH.
>> So most likely it won't work out of the box.
>> I think the cleanest option is too wait a little bit
>> until we finish clang integration.
>> (hopefully few more days)
>>
>> we've quite been busy on llvm side
>> and I'm excited to announce that BPF backend finally
>> graduated from experimental.
>> So now anyone can just pull the latest llvm and
>> bpf will be present by default.
>> No more cmake -DLLVM_EXPERIMENTAL...
>>
>> Once clang integration is complete. One can pull
>> upsteam llvm and clang and just use 'clang -O2 -c -march=bpf file.c'
>>
>
> Good news, so llc part should be removed.
>
> Next version I'd like to use following config options:
>
> [llvm]
> clang-bpf-cmd-template = "$CLANG_EXEC $CLANG_OPTIONS -c
> $CLANG_SOURCE -emit-llvm -O2 -o - | /path/to/llc -march=bpf
> -filetype=obj -o -"
> clang-path = "/path/to/clang"
> clang-opt = ""

yes. that's better.