This enables the X86-specific X86FloatingPointStackifierPass, and allow
llvm-exegesis to generate and measure X87 latency/uops for some FP ops.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
- Build Status
- Buildable 19767 - Build 19767: arc lint + arc unit 
Event Timeline
| tools/llvm-exegesis/lib/BenchmarkRunner.cpp | ||
|---|---|---|
| 201 | As discussed, let's create SelfAliasing in the function so we don't rely on the caller to do the right thing. | |
| tools/llvm-exegesis/lib/Latency.cpp | ||
| 88–89 | Let's do the following: auto result = generateSelfAliasingPrototype(Instr); if(result is ok) return result; return generateTwoInstructionPrototype(Instr); | |
| tools/llvm-exegesis/lib/BenchmarkRunner.cpp | ||
|---|---|---|
| 201 | Move just above the if (where it's used) | |
| 203 | Move below if (SelfAliasing.empty()) block. | |
| tools/llvm-exegesis/lib/Latency.cpp | ||
| 90 | this is not needed it you use the llvm idiom if(auto SelfAliasingPrototype = generateSelfAliasingPrototype(Instr)) {
   return SelfAliasingPrototype;
} | |
| tools/llvm-exegesis/lib/Latency.cpp | ||
|---|---|---|
| 90 | Unfortunately this does not work as is leaves the error unchecked. | |
As discussed, let's create SelfAliasing in the function so we don't rely on the caller to do the right thing.