Lines Matching refs:eei

124   Expression_eval_info eei;  in eval_maybe_dot()  local
125 eei.symtab = symtab; in eval_maybe_dot()
126 eei.layout = layout; in eval_maybe_dot()
127 eei.check_assertions = check_assertions; in eval_maybe_dot()
128 eei.is_dot_available = is_dot_available; in eval_maybe_dot()
129 eei.dot_value = dot_value; in eval_maybe_dot()
130 eei.dot_section = dot_section; in eval_maybe_dot()
136 eei.result_section_pointer = result_section_pointer; in eval_maybe_dot()
140 eei.type_pointer = type_pointer; in eval_maybe_dot()
141 eei.vis_pointer = vis_pointer; in eval_maybe_dot()
142 eei.nonvis_pointer = nonvis_pointer; in eval_maybe_dot()
144 eei.result_alignment_pointer = result_alignment_pointer; in eval_maybe_dot()
149 eei.is_valid_pointer = &is_valid; in eval_maybe_dot()
151 uint64_t val = this->value(&eei); in eval_maybe_dot()
225 Symbol_expression::value(const Expression_eval_info* eei) in value() argument
227 Symbol* sym = eei->symtab->lookup(this->name_.c_str()); in value()
235 if (eei->result_section_pointer != NULL) in value()
236 *eei->result_section_pointer = sym->output_section(); in value()
237 if (eei->type_pointer != NULL) in value()
238 *eei->type_pointer = sym->type(); in value()
239 if (eei->vis_pointer != NULL) in value()
240 *eei->vis_pointer = sym->visibility(); in value()
241 if (eei->nonvis_pointer != NULL) in value()
242 *eei->nonvis_pointer = sym->nonvis(); in value()
245 return eei->symtab->get_sized_symbol<32>(sym)->value(); in value()
247 return eei->symtab->get_sized_symbol<64>(sym)->value(); in value()
270 Dot_expression::value(const Expression_eval_info* eei) in value() argument
272 if (!eei->is_dot_available) in value()
278 if (eei->result_section_pointer != NULL) in value()
279 *eei->result_section_pointer = eei->dot_section; in value()
280 return eei->dot_value; in value()
308 arg_value(const Expression_eval_info* eei, in arg_value() argument
311 return this->arg_->eval_maybe_dot(eei->symtab, eei->layout, in arg_value()
312 eei->check_assertions, in arg_value()
313 eei->is_dot_available, in arg_value()
314 eei->dot_value, in arg_value()
315 eei->dot_section, in arg_value()
317 eei->result_alignment_pointer, in arg_value()
322 eei->is_valid_pointer); in arg_value()
349 value(const Expression_eval_info* eei) \
352 uint64_t ret = OPERATOR this->arg_value(eei, &arg_section); \
395 left_value(const Expression_eval_info* eei, in left_value() argument
399 return this->left_->eval_maybe_dot(eei->symtab, eei->layout, in left_value()
400 eei->check_assertions, in left_value()
401 eei->is_dot_available, in left_value()
402 eei->dot_value, in left_value()
403 eei->dot_section, in left_value()
410 eei->is_valid_pointer); in left_value()
414 right_value(const Expression_eval_info* eei, in right_value() argument
418 return this->right_->eval_maybe_dot(eei->symtab, eei->layout, in right_value()
419 eei->check_assertions, in right_value()
420 eei->is_dot_available, in right_value()
421 eei->dot_value, in right_value()
422 eei->dot_section, in right_value()
429 eei->is_valid_pointer); in right_value()
482 value(const Expression_eval_info* eei) \
486 uint64_t left = this->left_value(eei, &left_section, \
490 uint64_t right = this->right_value(eei, &right_section, \
494 if (eei->result_section_pointer != NULL) \
495 *eei->result_section_pointer = right_section; \
496 if (eei->result_alignment_pointer != NULL \
497 && right_alignment > *eei->result_alignment_pointer) \
498 *eei->result_alignment_pointer = right_alignment; \
504 if (eei->result_section_pointer != NULL) \
505 *eei->result_section_pointer = left_section; \
506 if (eei->result_alignment_pointer != NULL \
507 && left_alignment > *eei->result_alignment_pointer) \
508 *eei->result_alignment_pointer = left_alignment; \
577 arg1_value(const Expression_eval_info* eei, in arg1_value() argument
580 return this->arg1_->eval_maybe_dot(eei->symtab, eei->layout, in arg1_value()
581 eei->check_assertions, in arg1_value()
582 eei->is_dot_available, in arg1_value()
583 eei->dot_value, in arg1_value()
584 eei->dot_section, in arg1_value()
591 eei->is_valid_pointer); in arg1_value()
595 arg2_value(const Expression_eval_info* eei, in arg2_value() argument
599 return this->arg2_->eval_maybe_dot(eei->symtab, eei->layout, in arg2_value()
600 eei->check_assertions, in arg2_value()
601 eei->is_dot_available, in arg2_value()
602 eei->dot_value, in arg2_value()
603 eei->dot_section, in arg2_value()
610 eei->is_valid_pointer); in arg2_value()
614 arg3_value(const Expression_eval_info* eei, in arg3_value() argument
618 return this->arg3_->eval_maybe_dot(eei->symtab, eei->layout, in arg3_value()
619 eei->check_assertions, in arg3_value()
620 eei->is_dot_available, in arg3_value()
621 eei->dot_value, in arg3_value()
622 eei->dot_section, in arg3_value()
629 eei->is_valid_pointer); in arg3_value()
668 value(const Expression_eval_info* eei) in value() argument
671 uint64_t arg1 = this->arg1_value(eei, &arg1_section); in value()
673 ? this->arg2_value(eei, eei->result_section_pointer, in value()
674 eei->result_alignment_pointer) in value()
675 : this->arg3_value(eei, eei->result_section_pointer, in value()
676 eei->result_alignment_pointer)); in value()
708 value(const Expression_eval_info* eei) in value() argument
712 uint64_t left = this->left_value(eei, &left_section, &left_alignment); in value()
715 uint64_t right = this->right_value(eei, &right_section, &right_alignment); in value()
718 if (eei->result_section_pointer != NULL) in value()
719 *eei->result_section_pointer = left_section; in value()
724 if (eei->result_alignment_pointer != NULL) in value()
726 uint64_t ra = *eei->result_alignment_pointer; in value()
733 *eei->result_alignment_pointer = ra; in value()
759 value(const Expression_eval_info* eei) in value() argument
763 uint64_t left = this->left_value(eei, &left_section, &left_alignment); in value()
766 uint64_t right = this->right_value(eei, &right_section, &right_alignment); in value()
769 if (eei->result_section_pointer != NULL) in value()
770 *eei->result_section_pointer = left_section; in value()
775 if (eei->result_alignment_pointer != NULL) in value()
777 uint64_t ra = *eei->result_alignment_pointer; in value()
784 *eei->result_alignment_pointer = ra; in value()
837 Section_expression::value(const Expression_eval_info* eei) in value() argument
840 Output_section* os = eei->layout->find_output_section(section_name); in value()
842 return this->value_from_output_section(eei, os); in value()
848 const Script_options* ss = eei->layout->script_options(); in value()
875 value(const Expression_eval_info* eei) in value() argument
877 uint64_t ret = this->arg_value(eei, NULL); in value()
879 if (eei->result_section_pointer != NULL) in value()
880 *eei->result_section_pointer = NULL; in value()
909 value(const Expression_eval_info* eei) in value() argument
912 uint64_t align = this->right_value(eei, &align_section, NULL); in value()
917 if (eei->result_alignment_pointer != NULL in value()
918 && align > *eei->result_alignment_pointer) in value()
923 *eei->result_alignment_pointer = a; in value()
926 uint64_t value = this->left_value(eei, eei->result_section_pointer, NULL); in value()
953 value(const Expression_eval_info* eei) in value() argument
955 uint64_t value = this->arg_value(eei, eei->result_section_pointer); in value()
956 if (!value && eei->check_assertions) in value()
991 value_from_output_section(const Expression_eval_info* eei, in value_from_output_section() argument
994 if (eei->result_section_pointer != NULL) in value_from_output_section()
995 *eei->result_section_pointer = os; in value_from_output_section()
998 *eei->is_valid_pointer = false; in value_from_output_section()
1165 value(const Expression_eval_info* eei) in value() argument
1167 Symbol* sym = eei->symtab->lookup(this->symbol_name_.c_str()); in value()
1196 value_from_output_section(const Expression_eval_info* eei, in value_from_output_section() argument
1203 if (eei->result_section_pointer != NULL) in value_from_output_section()
1204 *eei->result_section_pointer = os; in value_from_output_section()
1279 Sizeof_headers_expression::value(const Expression_eval_info* eei) in value() argument
1296 return ehdr_size + phdr_size * eei->layout->expected_segment_count(); in value()
1332 Segment_start_expression::value(const Expression_eval_info* eei) in value() argument
1346 uint64_t ret = this->arg_value(eei, NULL); in value()
1348 if (eei->result_section_pointer != NULL) in value()
1349 *eei->result_section_pointer = NULL; in value()