Refactor and remove copy mark bits.
Refactor code GC realted code to be in a GC folder.
Remove copy mark bits by using pointer changing instead.
Enable concurrent sweeping of system weaks.
Fix non concurrent GC plan.
Change-Id: I9c71478be27d21a75f8a4e6af6faabe896e5e263
diff --git a/build/Android.common.mk b/build/Android.common.mk
index b03b52b..00ef7d3 100644
--- a/build/Android.common.mk
+++ b/build/Android.common.mk
@@ -164,7 +164,6 @@
LIBART_COMMON_SRC_FILES := \
src/atomic.cc.arm \
- src/card_table.cc \
src/check_jni.cc \
src/class_linker.cc \
src/common_throws.cc \
@@ -182,8 +181,13 @@
src/dlmalloc.cc \
src/file.cc \
src/file_linux.cc \
+ src/gc/card_table.cc \
+ src/gc/heap_bitmap.cc \
+ src/gc/mark_sweep.cc \
+ src/gc/mod_union_table.cc \
+ src/gc/space.cc \
+ src/gc/space_bitmap.cc \
src/heap.cc \
- src/heap_bitmap.cc \
src/hprof/hprof.cc \
src/image.cc \
src/image_writer.cc \
@@ -198,10 +202,8 @@
src/jobject_comparator.cc \
src/locks.cc \
src/logging.cc \
- src/mark_sweep.cc \
src/mem_map.cc \
src/memory_region.cc \
- src/mod_union_table.cc \
src/monitor.cc \
src/mutex.cc \
src/native/dalvik_system_DexFile.cc \
@@ -248,8 +250,6 @@
src/runtime.cc \
src/runtime_support.cc \
src/signal_catcher.cc \
- src/space.cc \
- src/space_bitmap.cc \
src/stack.cc \
src/stringpiece.cc \
src/stringprintf.cc \
@@ -373,6 +373,7 @@
LIBART_ENUM_OPERATOR_OUT_HEADER_FILES := \
src/dex_instruction.h \
+ src/gc/space.h \
src/heap.h \
src/indirect_reference_table.h \
src/instruction_set.h \
@@ -383,7 +384,6 @@
src/mutex.h \
src/object.h \
src/thread.h \
- src/space.h \
src/verifier/method_verifier.h
LIBARTTEST_COMMON_SRC_FILES := \
@@ -398,6 +398,8 @@
src/dex_instruction_visitor_test.cc \
src/exception_test.cc \
src/file_test.cc \
+ src/gc/space_bitmap_test.cc \
+ src/gc/space_test.cc \
src/gtest_test.cc \
src/heap_test.cc \
src/image_test.cc \
@@ -413,8 +415,6 @@
src/reference_table_test.cc \
src/runtime_support_test.cc \
src/runtime_test.cc \
- src/space_bitmap_test.cc \
- src/space_test.cc \
src/utils_test.cc \
src/zip_archive_test.cc \
src/verifier/method_verifier_test.cc \