GithubHelp home page GithubHelp logo

Comments (8)

JesusFreke avatar JesusFreke commented on July 19, 2024

Comment #1 originally posted by JesusFreke on 2010-06-10T14:36:06.000Z:

Some additional discussion of this is in the comments on issue 29: http://code.google.com/p/smali/issues/detail?id=29

from smali.

JesusFreke avatar JesusFreke commented on July 19, 2024

Comment #2 originally posted by JesusFreke on 2010-06-10T14:38:03.000Z:

Keep up the great work JF! :-)

P

from smali.

JesusFreke avatar JesusFreke commented on July 19, 2024

Comment #3 originally posted by JesusFreke on 2010-06-11T05:38:58.000Z:

I've committed some experimental changes which should better handle cases like these. Please grab a copy of the ExperimentalDeodexChange branch and try it out, and let me know how it works for you :)

svn checkout http://smali.googlecode.com/svn/branches/ExperimentalDeodexChange smali

from smali.

JesusFreke avatar JesusFreke commented on July 19, 2024

Comment #4 originally posted by JesusFreke on 2010-06-11T12:54:37.000Z:

So far so good... :-)

from smali.

JesusFreke avatar JesusFreke commented on July 19, 2024

Comment #5 originally posted by JesusFreke on 2010-06-11T13:20:25.000Z:

Great! :)

I had an epiphany last night, which led to this implementation. Before, I was commenting out the dead code after a deodexeable instruction, because there were some cases where that following code wouldn't pass dalvik's validation, due to the missing register information from the replaced instruction.

But then I realized - dalvik doesn't validate dead code :). By always replacing the deodexable instructions with a throw, it renders the following code really dead. Before, in the cases where I was replacing them with a different invoke instruction, dalvik still thought that execution could continue on past the invoke, and so it would procede to validate the following code. Since execution can never procede past a throw, dalvik's verifier never reaches the following dead code, and I don't have to worry about making it verification safe - I can just leave it as-is instead of commenting it out. I just have to replace any other dead odex instructions in the following code with a throw as well.

from smali.

JesusFreke avatar JesusFreke commented on July 19, 2024

Comment #6 originally posted by JesusFreke on 2010-06-12T02:31:39.000Z:

Just wanted to let you know that everything is well for me after your latest update. Deodexed Froyo is on my n1 with no issues atm. Keep up the good work JF!

from smali.

JesusFreke avatar JesusFreke commented on July 19, 2024

Comment #7 originally posted by JesusFreke on 2010-06-12T15:53:03.000Z:

Great! Thanks for trying it out and letting me know Paul and jrEE2kX :)

from smali.

JesusFreke avatar JesusFreke commented on July 19, 2024

Comment #8 originally posted by JesusFreke on 2010-06-13T21:03:40.000Z:

The changes have been merged to trunk, and are included in 1.2.3.

from smali.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.