[llvm-dev] SelectionDAGBuilder-may by a bug

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

[llvm-dev] SelectionDAGBuilder-may by a bug

Jonas Paulsson via llvm-dev

hello all
  
  when i use ollvm from github.com:heroims/obfuscator.git [version 5.0.0] to obtuscate my c++ code.

  I got a endless loop in llvm SelectionDAGBuilder.cpp:findUnwindDestinations function

    
 the 1349 - 1351 line is my debug code.  
 the code run in 1353 line branch. and return to 1327 line.  
   
 I dont known in this function how to handle LoadInst?  help!! 

 
thanks.


魏平顺  |  高级工程师
北京数美时代科技有限公司
手机/微信: 18510971882/313275773
邮箱: [hidden email]
网址: www.ishumei.com
地址: 北京市朝阳区来广营西街诚盈中心1号楼3A室



_______________________________________________
LLVM Developers mailing list
[hidden email]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] SelectionDAGBuilder-may by a bug

Jonas Paulsson via llvm-dev
Hello
Well, in general – you cannot. Landing pad destination blocks are very
precious and should not have anything extra. It's likely that ollvm
simply does not handle them properly and needs to be fixed.
On Thu, Nov 28, 2019 at 6:32 AM weipingshun via llvm-dev
wrote:
>
>
> hello all
>
> when i use ollvm from github.com:heroims/obfuscator.git [version 5.0.0] to obtuscate my c++ code.
>
> I got a endless loop in llvm SelectionDAGBuilder.cpp:findUnwindDestinations function.
>
>
> the 1349 - 1351 line is my debug code.
> the code run in 1353 line branch. and return to 1327 line.
>
> I don’t known in this function how to handle LoadInst? help!!
>
>
> thanks.
>
>
> 魏平顺 | 高级工程师
> 北京数美时代科技有限公司
> 手机/微信: 18510971882/313275773
> 邮箱: [hidden email]
> 网址: www.ishumei.com
> 地址: 北京市朝阳区来广营西街诚盈中心1号楼3A室
>
>
> _______________________________________________
> LLVM Developers mailing list
> [hidden email]
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
--
With best regards, Anton Korobeynikov
Department of Statistical Modelling, Saint Petersburg State University
  

_______________________________________________
LLVM Developers mailing list
[hidden email]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

PastedGraphic-2.tiff (474K) Download Attachment
=?UTF-8?Q?logo=E6=9C=80=E7=BB=88=E5=AE=9A=E7=A8=BF?= =?UTF-8?Q?=2Epng?= (12K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] SelectionDAGBuilder-may by a bug

Jonas Paulsson via llvm-dev
In reply to this post by Jonas Paulsson via llvm-dev
Hi,

On Thu, 28 Nov 2019 at 03:32, weipingshun via llvm-dev
<[hidden email]> wrote:
>  I don’t known in this function how to handle LoadInst?  help!!

That code looks dodgy, but it should only cause a problem if the input
IR is malformed. findUnwindDestinations is only called on unwind
destination blocks (successors of invoke or cleanupret), and they must
start with one of those kinds of instructions.

Cheers.

Tim.
_______________________________________________
LLVM Developers mailing list
[hidden email]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] SelectionDAGBuilder-may by a bug

Jonas Paulsson via llvm-dev
In reply to this post by Jonas Paulsson via llvm-dev

hello all

I found ollvm  use -bcf may change any block (include Landing pad block).  I fixed the ollvm code not change landing pad block. now it’s work fine.


 thanks very much! 

Cheers.

魏平顺  |  高级工程师
北京数美时代科技有限公司
手机/微信: 18510971882/313275773
邮箱: [hidden email]
网址: www.ishumei.com
地址: 北京市朝阳区来广营西街诚盈中心1号楼3A室


在 2019年11月27日,下午9:02,weipingshun <[hidden email]> 写道:

findUnwindDestinations


_______________________________________________
LLVM Developers mailing list
[hidden email]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev