1. 05 Apr, 2018 1 commit
  2. 15 Dec, 2016 1 commit
  3. 29 Aug, 2016 1 commit
  4. 26 Aug, 2016 1 commit
  5. 25 Aug, 2016 1 commit
    • Lubomir Bulej's avatar
      NetReferenceHelper: add getUniqueId() method that will return a net reference... · 5c376d0e
      Lubomir Bulej authored
      NetReferenceHelper: add getUniqueId() method that will return a net reference with the special payload bit masked.
      ShadowObject: add (package private) getUniqueId() method.
      ShadowObject: add (package private) isSpecial() method.
      ShadowObject, ShadowClass: move (package private) getClassId() method from ShadowClass to ShadowObject.
      ShadowObject: remove the getNetRef() method to (sort of) keep a lid on the raw net reference.
      ShadowObject: test equality using getUniqueId() instead of raw net reference, so that objects with the same it but one containing special payload are considered equal.
      ShadowObjectTable: only call updateFrom() on an existing object when the other object is "special", i.e., it contains special payload.
      ShadowClassTable: avoid using net reference directly, use isSpecial() and getClassId() on the shadow object.
      
      5c376d0e
  6. 18 Aug, 2016 1 commit
    • Lubomir Bulej's avatar
      - Add support to tolerate lambda classes. These do not come with bytecode, · 294bf36d
      Lubomir Bulej authored
        so for now, we just have a special ShadowClass variant to avoid crashes.
        Getting complete class information will probably require using reflection
        at the agent side, but let's postpone it until it is really needed.
      - Add a battery of simple tests to check basic sanity of LambdaShadowClass.
      - Add a simple ShadowVM test to check that we can pass a lambda object to REDispatch.
      - Rework class name generation in ShadowClass and PrimitiveShadowClass to
        avoid calling overridable public methods.
      294bf36d
  7. 16 Aug, 2016 4 commits
  8. 15 Aug, 2016 4 commits
  9. 06 Aug, 2016 1 commit
  10. 03 Aug, 2016 4 commits
  11. 23 Jul, 2016 2 commits
    • Lubomir Bulej's avatar
      ShadowString, ShadowThread: get rid of overriden hashCode() and equals() and... · 565bb63b
      Lubomir Bulej authored
      ShadowString, ShadowThread: get rid of overriden hashCode() and equals() and rely on the superclass implementation that only cares about net reference equality.
      ShadowObject, ShadowString, ShadowThread: make a shadow object updatable from other object with the same net reference (required for partially-constructed special objects).
      ShadowString, ShadowThread: get rid of setter methods in favor of updateFrom() method.
      ShadowThread: make additional information about a thread atomically updateable.
      ShadowClassTable: log when the JAVA_LANG_CLASS reference is updated.
      ShadowClassTable, ShadowObjectTable: make the classes final.
      ShadowObjectTable: use the updateFrom() method from shadow object instead of hand-coding updates in the registration method.
      ShadowObjectTable: simplify the get() method by extracting code to create shadow objects in conjunction with the use of computeIfAbsent() method on the shadow object map.
      
      565bb63b
    • Lubomir Bulej's avatar
      ClassInfoLoader: move shadow class creation to ShadowClassTable, leave only IO. · fa64d56a
      Lubomir Bulej authored
      ShadowClassTable: preprocess data from ClassInfoLoader before calling newInstance().
      ShadowClassTable: simplify the implementation of newInstance(), extract class creation into __createShadowClass().
      ShadowObject: make getNetRef() package private.
      ShadowObject: use get() on the JAVA_LANG_CLASS atomic reference.
      ObjectShadowClass: use ASM Type instead of String with class signature.
      fa64d56a
  12. 22 Jul, 2016 6 commits
  13. 21 Jul, 2016 1 commit
  14. 19 Jul, 2016 1 commit
  15. 14 Jul, 2016 1 commit
  16. 24 Jul, 2014 1 commit
  17. 23 Jul, 2014 1 commit
  18. 07 Jul, 2014 2 commits
  19. 20 Jun, 2014 1 commit
  20. 13 Jun, 2014 1 commit
  21. 29 May, 2014 1 commit
    • Lubomir Bulej's avatar
      - Merged the new DiSL agent code. Code generations options are not yet used. · ed524974
      Lubomir Bulej authored
      - Removed the old DiSL agent code as well as the old Java agent.
      - Copied old shared DiSL agent headers to Shadow VM agent.
      - Added JDK includes for JNI and JVMTI to avoid looking for them.
      - Unified the naming of source directories.
      - Updated the test infrastructure to the new build system layout.
      - Examples can be now run even from the source distribution.
      ed524974