Displaying 4 results from an estimated 4 matches for "defaultbb".
2017 Feb 13
5
(RFC) JumpMaps: switch statement optimization
...lseif- for small switches and an inline binary-search for large
switches, if it can't produce a JumpTable. JumpMaps would instead
generate a call followed by a jump-through-register.
Pseudo-code example:
switch(x) {
  case 0x6851: {BB1}
  case 0x1383: {BB2}
  case 0x2224: {BB3}
  default:     {defaultBB}
}
Without Jump Maps:
  if(x==0x6851) {
    goto BB1
  }
  else if(x==0x1383) {
    goto BB2
  }
  else if(x==0x2224){
    goto BB3
  }
  else{
    goto defaultBB
  }
With Jump Maps:
  jumpmap_0 = {
    keys = {3, 0x6851, 0x1383, 0x2224}
    vals = {defaultBB, BB1, BB2, BB3}
  }
  addr dst = __ju...
2017 Feb 14
2
(RFC) JumpMaps: switch statement optimization
...line binary-search for large switches, if it can't produce a JumpTable. JumpMaps would instead generate a call followed by a jump-through-register.
> Pseudo-code example:
> 
> switch(x) {
>   case 0x6851: {BB1}
>   case 0x1383: {BB2}
>   case 0x2224: {BB3}
>   default:     {defaultBB}
> }
> 
> Without Jump Maps:
>   if(x==0x6851) {
>     goto BB1
>   }
>   else if(x==0x1383) {
>     goto BB2
>   }
>   else if(x==0x2224){
>     goto BB3
>   }
>   else{
>     goto defaultBB
>   }
> 
> With Jump Maps:
>   jumpmap_0 = {
>...
2017 Feb 14
3
(RFC) JumpMaps: switch statement optimization
...produce a JumpTable. JumpMaps would instead generate a call followed by a jump-through-register.
>>> Pseudo-code example:
>>>
>>> switch(x) {
>>>   case 0x6851: {BB1}
>>>   case 0x1383: {BB2}
>>>   case 0x2224: {BB3}
>>>   default:     {defaultBB}
>>> }
>>>
>>> Without Jump Maps:
>>>   if(x==0x6851) {
>>>     goto BB1
>>>   }
>>>   else if(x==0x1383) {
>>>     goto BB2
>>>   }
>>>   else if(x==0x2224){
>>>     goto BB3
>>>   }
>>...
2010 Nov 09
1
[LLVMdev] uninitialized value warnings: LLVMParser.cpp
...ay be used uninitialized in this function
/Volumes/Data/Users/kremenek/llvm/lib/AsmParser/LLParser.cpp: In member function ‘bool llvm::LLParser::ParseSwitch(llvm::Instruction*&, llvm::LLParser::PerFunctionState&)’:
/Volumes/Data/Users/kremenek/llvm/lib/AsmParser/LLParser.cpp:3224: warning: ‘DefaultBB’ may be used uninitialized in this function
/Volumes/Data/Users/kremenek/llvm/lib/AsmParser/LLParser.cpp:3239: warning: ‘DestBB’ may be used uninitialized in this function
/Volumes/Data/Users/kremenek/llvm/lib/AsmParser/LLParser.cpp: In member function ‘bool llvm::LLParser::ParseIndirectBr(llvm::In...