void evict ();
void set_content (const char *buf, size_t sz);
+ static void tune(size_t line_record_size_) {
+ line_record_size = line_record_size_;
+ }
+
private:
/* These are information used to store a line boundary. */
class line_info
bool goto_next_line ();
static const size_t buffer_size = 4 * 1024;
- static const size_t line_record_size = 100;
+ static size_t line_record_size;
/* The number of time this file has been accessed. This is used
to designate which file cache to evict from the cache
};
+size_t file_cache_slot::line_record_size = 100;
+
+/* Tune file_cache. */
+void
+file_cache::tune (size_t num_file_slots_, size_t lines)
+{
+ num_file_slots = num_file_slots_;
+ file_cache_slot::tune (lines);
+}
+
+size_t file_cache::num_file_slots = 16;
+
static const char *
find_end_of_line (const char *s, size_t len);
const char *buffer,
size_t sz);
+ static void tune(size_t num_file_slots_, size_t lines);
+
private:
file_cache_slot *evicted_cache_tab_entry (unsigned *highest_use_count);
file_cache_slot *add_file (const char *file_path);
file_cache_slot *lookup_file (const char *file_path);
private:
- static const size_t num_file_slots = 16;
+ static size_t num_file_slots;
file_cache_slot *m_file_slots;
input_context m_input_context;
};
Common Joined UInteger Var(param_early_inlining_insns) Init(6) Optimization Param
Maximal estimated growth of function body caused by early inlining of single call.
+-param=file-cache-files=
+Common Joined UInteger Var(param_file_cache_files) Init(16) Param
+Max number of files in the file cache.
+
+-param=file-cache-lines=
+Common Joined UInteger Var(param_file_cache_lines) Init(100) Param
+Max number of lines to index into file cache.
+
-param=fsm-scale-path-stmts=
Common Joined UInteger Var(param_fsm_scale_path_stmts) Init(2) IntegerRange(1, 10) Param Optimization
Scale factor to apply to the number of statements in a threading path crossing a loop backedge when comparing to max-jump-thread-duplication-stmts.
UNKNOWN_LOCATION, global_dc,
targetm.target_option.override);
+ file_cache::tune (param_file_cache_files, param_file_cache_lines);
+
handle_common_deferred_options ();
init_local_tick ();